<!DOCTYPE html>
<head><title>test</title>    
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    
            <style>
                #menu_b94e90d207e411eeb9b719a80c842107 {
                    position: relative;
                    width:85%;
                    height:fit-content;
	                display:inline-block;
	                vertical-align:top;
	                margin: 0;
	                left: 1%;
                    top: 0%;
                                    }
            </style>
            
    
        <script>
            L_NO_TOUCH = false;
            L_DISABLE_3D = false;
        </script>
    
    <style>html, body {width: 100%;height: 100%;margin: 0;padding: 0;}</style>
    <style>#map {position:absolute;top:0;bottom:0;right:0;left:0;}</style>
    <script src="https://cdn.jsdelivr.net/npm/leaflet@1.6.0/dist/leaflet.js"></script>
    <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/Leaflet.awesome-markers/2.0.2/leaflet.awesome-markers.js"></script>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/leaflet@1.6.0/dist/leaflet.css"/>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"/>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css"/>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css"/>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Leaflet.awesome-markers/2.0.2/leaflet.awesome-markers.css"/>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/python-visualization/folium/folium/templates/leaflet.awesome.rotate.min.css"/>
    
            <meta name="viewport" content="width=device-width,
                initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
            <style>
                #osm_map_0ae0fefc2e9748e2ef74f098f51108b2 {
                    position: relative;
                    width: 85.0%;
                    height: 85.0%;
                    left: 1.0%;
                    top: 1.0%;
                    display: inline-block;
                }
            </style>
        
    
              <style>
                #configuration_panel_7ee49330ce4b03a125db38e918aba747 {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 60%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_7ee49330ce4b03a125db38e918aba747 i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_7ee49330ce4b03a125db38e918aba747 i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_7ee49330ce4b03a125db38e918aba747 {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
            <style>
                #configuration_menu_605f2a8a4c8230d476c96de722481315 {
                    position: absolute;
	                display: none;
	                z-index: 999;
                                    }
                                    
			#configuration_menu_605f2a8a4c8230d476c96de722481315 ul{
				background-color: white;
				color: #B0C0C7;
				width: 150px;
				position: absolute;
				padding: 10px;
				box-shadow: 0px 0px 5px black;
				border-radius: 10px;
			}
			#configuration_menu_605f2a8a4c8230d476c96de722481315 li{
				list-style: none;
				line-height: 40px;
			}
			#configuration_menu_605f2a8a4c8230d476c96de722481315 li:hover{
				color: white;
				background-color: darkgrey;
			}
		</style>
            
    
               <style> 
                #delay_1b961f8f6104bc1e45dfb3210399a423 {
                position : relative;
                width : fit-content;
                height: fit-content;
                left: 0%;
                top: 0%;
                </style>
		         
    
               <style> 
                #packet_loss_fcd0ef57845fbae2cfdcdc92731adb03 {
                position : relative;
                width : fit-content;
                height: fit-content;
                left: 0%;
                top: 0%;
                </style>
		         
    
              <style>
                #configuration_panel_4e48d30cf064f6baf792be68d780a12b {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 60%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_4e48d30cf064f6baf792be68d780a12b i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_4e48d30cf064f6baf792be68d780a12b i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_4e48d30cf064f6baf792be68d780a12b {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
            <style>
                #configuration_menu_323d9534baacee665051af6913bb18ef {
                    position: absolute;
	                display: none;
	                z-index: 999;
                                    }
                                    
			#configuration_menu_323d9534baacee665051af6913bb18ef ul{
				background-color: white;
				color: #B0C0C7;
				width: 150px;
				position: absolute;
				padding: 10px;
				box-shadow: 0px 0px 5px black;
				border-radius: 10px;
			}
			#configuration_menu_323d9534baacee665051af6913bb18ef li{
				list-style: none;
				line-height: 40px;
			}
			#configuration_menu_323d9534baacee665051af6913bb18ef li:hover{
				color: white;
				background-color: darkgrey;
			}
		</style>
            
    
              <style>
                #configuration_panel_d1bb665df116152afc95dcee1a422d0e {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 60%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_d1bb665df116152afc95dcee1a422d0e i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_d1bb665df116152afc95dcee1a422d0e i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_d1bb665df116152afc95dcee1a422d0e {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
            <style>
                #configuration_menu_6f7788869d5e28fe726c5029bfba8363 {
                    position: absolute;
	                display: none;
	                z-index: 999;
                                    }
                                    
			#configuration_menu_6f7788869d5e28fe726c5029bfba8363 ul{
				background-color: white;
				color: #B0C0C7;
				width: 150px;
				position: absolute;
				padding: 10px;
				box-shadow: 0px 0px 5px black;
				border-radius: 10px;
			}
			#configuration_menu_6f7788869d5e28fe726c5029bfba8363 li{
				list-style: none;
				line-height: 40px;
			}
			#configuration_menu_6f7788869d5e28fe726c5029bfba8363 li:hover{
				color: white;
				background-color: darkgrey;
			}
		</style>
            
    
              <style>
                #configuration_panel_f8776bb39bf3527906d0422c56e9fcb6 {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 60%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_f8776bb39bf3527906d0422c56e9fcb6 i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_f8776bb39bf3527906d0422c56e9fcb6 i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_f8776bb39bf3527906d0422c56e9fcb6 {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
            <style>
                #configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e {
                    position: absolute;
	                display: none;
	                z-index: 999;
                                    }
                                    
			#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e ul{
				background-color: white;
				color: #B0C0C7;
				width: 150px;
				position: absolute;
				padding: 10px;
				box-shadow: 0px 0px 5px black;
				border-radius: 10px;
			}
			#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e li{
				list-style: none;
				line-height: 40px;
			}
			#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e li:hover{
				color: white;
				background-color: darkgrey;
			}
		</style>
            
    <script src="https://unpkg.com/layui@2.7.3/dist/layui.js"></script>
    <link rel="stylesheet" href="https://unpkg.com/layui@2.7.3/dist/css/layui.css"/>
    <script src="https://cdn.jsdelivr.net/npm/vega@5"></script>
    <script src="https://cdn.jsdelivr.net/npm/vega-embed@6"></script>
    <script src="https://cdn.jsdelivr.net/npm/vega-lite@5"></script>
    
              <style>
                #configuration_panel_c981ca32ecf4f581c3be553302d89c9a {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 60%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_c981ca32ecf4f581c3be553302d89c9a i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_c981ca32ecf4f581c3be553302d89c9a i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_c981ca32ecf4f581c3be553302d89c9a {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
            <style>
                #menu_8756cdd6aa20f46b87cbaa8249afc25e {
                    position: relative;
                    width:12%;
                    height:fit-content;
	                display:inline-block;
	                vertical-align:top;
	                margin: 0;
	                left: 2%;
                    top: 2%;
                                    }
            </style>
            
    
                <style>
                 #shade_menu_button_0df7705376564d29fdda40521a9d00b8 {
                         display: none;
                         position: absolute;
                         width: 100%;
                         background-color: rgba(0, 0, 0, .3);
                         z-index: 500;
                         justify-content: center;
                         align-items: center;
                           }
		            </style>
		         
    
              <style>
                #configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a {
                    position: absolute;
	                display: none;
	                z-index: 999;
	                background-color: white;
	                width: 70%;
                    height: fit-content;
                    margin:0;
                    padding:10px;
                    }
            
            #configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a i.layui-icon-close {
             font-size: 30px; 
             color: black; 
             float:right; 
             margin:10px;
			                     }
			                     
            #configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a i.layui-icon-close:hover {
				color: white;
				background-color: darkgrey;
			}
			
		#shade_configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a {
            display: none;
            position: absolute;
            width: 100%;
            background-color: rgba(0, 0, 0, .3);
            z-index: 500;
          }
		      </style>
            
    
                <style>
                 #shade_menu_button_31c133fa0c3cd3e25452be6e3b6b4b17 {
                         display: none;
                         position: absolute;
                         width: 100%;
                         background-color: rgba(0, 0, 0, .3);
                         z-index: 500;
                         justify-content: center;
                         align-items: center;
                           }
		            </style>
		         
    
            <style>
                #menu_66a489dead1a5044a980d87d300f8100 {
                    position: relative;
                    width:85%;
                    height:fit-content;
	                display:inline-block;
	                vertical-align:top;
	                margin: 0;
	                left: 5%;
                    top: 0%;
                                    }
            </style>
            
</head>
<body>    
    
              <div id='menu_b94e90d207e411eeb9b719a80c842107'>
              <table class="layui-table" lay-skin="nob" style='table-layout: fixed; width: 100%;'>
              <caption><h1>顶菜单</h1></caption>
              
              
                <tr>
                 
                    <td id="menu_b94e90d207e411eeb9b719a80c842107_0_0" align='center'> 
                    
                                
                                 
                <form id="menu_form_ea6696c43b7091341b46743959a18e43" class="layui-form" action="/geocode/" method="GET" >
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">地理位置：</label>
                    <div class="layui-input-inline" style="width:80%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_d22e21307564099818a2ca680b29006f" type="text" name="location"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_eb377fe36ddd12c827729a81ccd7b089' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>提交</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                </form>
                
                                
                    
                    </td>
                 
                </tr>
              
              </table>
              </div>
            
    
            <div class="folium-map" id="osm_map_0ae0fefc2e9748e2ef74f098f51108b2" ></div>
        
    
                   
                   <div id="shade_configuration_panel_7ee49330ce4b03a125db38e918aba747"></div>
                   
                   <div id='configuration_panel_7ee49330ce4b03a125db38e918aba747'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_7ee49330ce4b03a125db38e918aba747').style.display='none'; document.getElementById('shade_configuration_panel_7ee49330ce4b03a125db38e918aba747').style.display='none';" ></i> 
                   </div>
                   <form id="form_8d0943031611b9929768c1a46e9c2944" class="layui-form" action="None" method="GET" >
                    
                        
        <div class="layui-tab" id='tabs_41c0d36e38ed219250357eb33682e678' >
           <ul class="layui-tab-title">
              
              <li  class="layui-this" > 网络基础设置 </li>
              
              <li > CPU资源设置 </li>
              
              <li > 系统设置 </li>
              
              <li > 仿真测试 </li>
              
           </ul>
           <div class="layui-tab-content">
              
              <div class="layui-tab-item  layui-show ">
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">节点名称：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_088963e243978ca52767df6b99e2c18d" type="text" name="name" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">次序：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_3b9f34156e61b2a51752a90d085a39b9" type="text" name="order" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">地理坐标位置：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_882cf09e253de465789cfc3dcfd032c9" type="text" name="location" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">驻留点XY坐标：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_bda4fa43af22b92f84fc783d8543f906" type="text" name="position" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV4地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_3ffc4b288847344f5f963ad4e3593fe6" type="text" name="ip" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_3ffc4b288847344f5f963ad4e3593fe6" lay-filter="AUTO_input_for_form_3ffc4b288847344f5f963ad4e3593fe6" type="checkbox" name="Auto_Configuration_ip" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV6地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_79c9d86faf324e9b082108fee185c6eb" type="text" name="ip6" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_79c9d86faf324e9b082108fee185c6eb" lay-filter="AUTO_input_for_form_79c9d86faf324e9b082108fee185c6eb" type="checkbox" name="Auto_Configuration_ip6" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">MAC地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_d95a35a7601dc42c24247081efb100e9" type="text" name="mac" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_d95a35a7601dc42c24247081efb100e9" lay-filter="AUTO_input_for_form_d95a35a7601dc42c24247081efb100e9" type="checkbox" name="Auto_Configuration_mac" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_153a1cf0fc84e670e1cd97a5385067f3" type="text" name="mp_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">移动速度：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_b8a9475db01d06f7679fddf5b8c4708d" type="text" name="speed"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu带宽(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_4726a39059a78f970e2acedde638ea97" type="text" name="mp_cpu_period"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu配额(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_b5a329ea530e9e347d055e78f2fca224" type="text" name="mp_cpu_quota"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu份额相对值：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_612bf7ea5347eda5daf94491c40ad4bb" type="text" name="mp_cpu_shares"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">物理内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_98690cf455cd92577c7f67048bc1014e" type="text" name="mp_mem_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">虚拟内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_00909f1c2c95ab526fc805ca373ab4b8" type="text" name="mp_memswap_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">操作系统镜像：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_f400ccfccfc0484b7c1c95f4dda3b155" type="text" name="mp_dimage"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">系统内核参数：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_4d85971f5363e6635c06e332bcbcff72" type="text" name="mp_sysctls"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">延迟测试：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_bc62ab97ca27fae341c03189d68f0e31" type="text" name="mp_delayTest"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">丢包率测试：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_287da7b2023b7fe675178d21f466d05b" type="text" name="mp_packetLossTest"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">仿真实验方式：</label>
                    <div class="layui-input-inline" style="width:40%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_bb7a7681af1793769783ee0058ded34f" type="text" name="mp_emulation"   lay-verify="" placeholder="请输入数值，不设置默认为10" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                        
                         <div class="layui-input-inline" style="width:10%; margin-left:0px;">
                            <select id="select_3197e7c43028e454929a45ca31c02eb8" name="mp_emulationWays"  lay-verify="">
                                
                                
                                <option value="period">s</option>
                                
                                
                                
                                <option value="times">times</option>
                                
                                
                            </select>
                        </div>
                
                    
                 </div>
                
              
              
              
              
                    <div class="layui-form-item">
                        
                        <label class="layui-form-label" style="white-space: nowrap">仿真结果数据聚集程度:</label>
                        
                         <div class="layui-input-inline" style="width:30%; margin:0px 0px 0px 100px;">
                            <select id="select_for_form_69794f62a88a51934c3dad760437d077" name="mp_aggregation" required lay-verify="required">
                                
                                
                                <option value="1">1</option>
                                
                                
                                
                                <option value="5">5</option>
                                
                                
                                
                                <option value="10">10</option>
                                
                                
                                
                                <option value="20">20</option>
                                
                                
                            </select>
                        </div>
                    </div>
                
              
              
              </div>
              
            </div>
        </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_c655d3630c61f63c2f909b2081ca55ff' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>保存</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
                   <div id='configuration_menu_605f2a8a4c8230d476c96de722481315'>
                    <ul id='ul_cc3bb4e0a1ab42f00066c6e956618e97'>
                    
                    
                    <li id='li_31d735e7edaf5145f70040136a57e77d'>
                    
                     配置
                    
                    </li>
                
                    
                    
                    <li id='li_9d61803ef906e35237db0cfd22d034f5'>
                    
                     添加新移动点
                    
                    </li>
                
                    
                    
                    <li id='li_4ed525c49530a9ba8e9fa82c37dc8d60'>
                    
                     删除
                    
                    </li>
                
                    
                    
                    <li id='li_fa454b9a98c07ca43d22a3e9c29724b3'>
                    
                     取消
                    
                    </li>
                
                    
                    </ul>
                    </div>
                    
    
                   
                   <div id="shade_configuration_panel_4e48d30cf064f6baf792be68d780a12b"></div>
                   
                   <div id='configuration_panel_4e48d30cf064f6baf792be68d780a12b'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_4e48d30cf064f6baf792be68d780a12b').style.display='none'; document.getElementById('shade_configuration_panel_4e48d30cf064f6baf792be68d780a12b').style.display='none';" ></i> 
                   </div>
                   <form id="form_af810a4bb818872e737b625836e28382" class="layui-form" action="None" method="GET" >
                    
                        
        <div class="layui-tab" id='tabs_effc46c11cc4f02f88bac114b465ae5c' >
           <ul class="layui-tab-title">
              
              <li  class="layui-this" > 网络基础设置 </li>
              
              <li > CPU资源设置 </li>
              
              <li > 系统设置 </li>
              
           </ul>
           <div class="layui-tab-content">
              
              <div class="layui-tab-item  layui-show ">
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">节点名称：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_46e60314920969c1bf540c6f346ad848" type="text" name="name" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">地理坐标位置：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_6e7da83e2a7cbe6d5cc2f43524f2c15f" type="text" name="location" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">平面XY坐标：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_57c5ba3b197109073f4022487a493149" type="text" name="position" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV4地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_7880123ac976d77a28c5d455f53a8157" type="text" name="ip" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_7880123ac976d77a28c5d455f53a8157" lay-filter="AUTO_input_for_form_7880123ac976d77a28c5d455f53a8157" type="checkbox" name="Auto_Configuration_ip" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV6地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3" type="text" name="ip6" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3" lay-filter="AUTO_input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3" type="checkbox" name="Auto_Configuration_ip6" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">MAC地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_38ba8d439ee1bd8158cb05cae5154c0c" type="text" name="mac" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_38ba8d439ee1bd8158cb05cae5154c0c" lay-filter="AUTO_input_for_form_38ba8d439ee1bd8158cb05cae5154c0c" type="checkbox" name="Auto_Configuration_mac" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_c9a92a677d102d2d198b3b5ff14ab813" type="text" name="ec_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu带宽(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_07fc0705641f1c5a5991b05dce99a95b" type="text" name="ec_cpu_period"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu配额(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_8e29ce2d8a4156306a200135a43ebce0" type="text" name="ec_cpu_quota"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu份额相对值：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_a0c11f41610b2429bfc364b2957d1308" type="text" name="ec_cpu_shares"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">物理内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_fecc271ef9c6e302e6c9ff67e3a18cbe" type="text" name="ec_mem_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">虚拟内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_5c11ebaba14e2e6c1d0cb69c1238c3ae" type="text" name="ec_memswap_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">操作系统镜像：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_e2c3df41931e322bd4ee3cb7c7efab06" type="text" name="ec_dimage"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">系统内核参数：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_78a85d3eed989f43118b82a65b63f175" type="text" name="ec_sysctls"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              </div>
              
            </div>
        </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_dfadae0b0a81af9172bbcc3187ddabd3' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>保存</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
                   <div id='configuration_menu_323d9534baacee665051af6913bb18ef'>
                    <ul id='ul_fc89b98f891b433a432cad6387a0836f'>
                    
                    
                    <li id='li_ae76935f6353fb910aecb10c52c29467'>
                    
                     配置
                    
                    </li>
                
                    
                    
                    <li id='li_ac0fad0aab70b4a9e400d7937bcbfbd8'>
                    
                     删除
                    
                    </li>
                
                    
                    
                    <li id='li_0d8778585c74de07c26f7faf32b5b98c'>
                    
                     取消
                    
                    </li>
                
                    
                    </ul>
                    </div>
                    
    
                   
                   <div id="shade_configuration_panel_d1bb665df116152afc95dcee1a422d0e"></div>
                   
                   <div id='configuration_panel_d1bb665df116152afc95dcee1a422d0e'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_d1bb665df116152afc95dcee1a422d0e').style.display='none'; document.getElementById('shade_configuration_panel_d1bb665df116152afc95dcee1a422d0e').style.display='none';" ></i> 
                   </div>
                   <form id="form_72b234f61702bf94f36bf768eadf06ef" class="layui-form" action="None" method="GET" >
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">节点名称：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_eaf0ac27bbaeba2cd0cf6a1d765ced66" type="text" name="name" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">地理坐标位置：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_669a7de235da5758432ddb781d771cf6" type="text" name="location" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">平面XY坐标：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_70479fc7cc2018e0287444afc83a6af9" type="text" name="position" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">ssid：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_f237537d9a235ed829ce99d263df8d1b" type="text" name="ssid"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV4地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_11e2b22e74fa29c62ac093945049201a" type="text" name="ip" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_11e2b22e74fa29c62ac093945049201a" lay-filter="AUTO_input_for_form_11e2b22e74fa29c62ac093945049201a" type="checkbox" name="Auto_Configuration_ip" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV6地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d" type="text" name="ip6" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d" lay-filter="AUTO_input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d" type="checkbox" name="Auto_Configuration_ip6" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">MAC地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_eb46a96470920ae765dc3db9b15cb91c" type="text" name="mac" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    <div class="layui-input-inline" style="width:20%;">
                    <input id="AUTO_input_for_form_eb46a96470920ae765dc3db9b15cb91c" lay-filter="AUTO_input_for_form_eb46a96470920ae765dc3db9b15cb91c" type="checkbox" name="Auto_Configuration_mac" title="AUTO" checked value=true >
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_24ea5ff990a61401e6607d4e75c297d1" type="text" name="ap_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_513e585ee80a75f774b2965e61928414' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>保存</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
                   <div id='configuration_menu_6f7788869d5e28fe726c5029bfba8363'>
                    <ul id='ul_f81e6fa5876ffd42b5651d99c4b52a3f'>
                    
                    
                    <li id='li_78e12b1cd63debde4e820c1fc6a7bbf7'>
                    
                     配置
                    
                    </li>
                
                    
                    
                    <li id='li_1c13ecd432f3f3da80b6c526abe85259'>
                    
                     删除
                    
                    </li>
                
                    
                    
                    <li id='li_b1c6bfc2ba1e7f47d084de169309b308'>
                    
                     取消
                    
                    </li>
                
                    
                    </ul>
                    </div>
                    
    
                   
                   <div id="shade_configuration_panel_f8776bb39bf3527906d0422c56e9fcb6"></div>
                   
                   <div id='configuration_panel_f8776bb39bf3527906d0422c56e9fcb6'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').style.display='none'; document.getElementById('shade_configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').style.display='none';" ></i> 
                   </div>
                   <form id="form_a3e25042a4cca9280de19f7127f61aef" class="layui-form" action="None" method="GET" >
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">网络链接名称：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_eab3c51d5056ae8606eef94855a70ec5" type="text" name="name" readonly required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">源点：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_c9a31b0d6b6be8e39b8d5ace4492cef6" type="text" name="node1"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">目点：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_6a39415259fe929fdbe095875a3080dc" type="text" name="node2"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">带宽：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_fd664023be6c8b9bcddc8252c0353b9b" type="text" name="bw"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">延迟：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_d844d0aaa9639aa80034aadbacc4c49d" type="text" name="delay"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">延迟抖动：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_3b7b45ec574ba0657e3ef43b5cff0f73" type="text" name="jitter"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">丢包率：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_5870a1efcaf7c3b714c6f578782a1790" type="text" name="loss"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_c6c804cffd199f4d4ceedfa8ea1b47db' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>保存</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
                   <div id='configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e'>
                    <ul id='ul_45704631575f087afd7eb995f06eda1d'>
                    
                    
                    <li id='li_904b0ab962e8703cfd709d99b3108c29'>
                    
                     配置
                    
                    </li>
                
                    
                    
                    <li id='li_72750e215f985629ce0ee32b4b4c8066'>
                    
                     删除
                    
                    </li>
                
                    
                    
                    <li id='li_94b39a7f079599578736bf7a8804ee90'>
                    
                     取消
                    
                    </li>
                
                    
                    </ul>
                    </div>
                    
    
                   
                   <div id="shade_configuration_panel_c981ca32ecf4f581c3be553302d89c9a"></div>
                   
                   <div id='configuration_panel_c981ca32ecf4f581c3be553302d89c9a'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_c981ca32ecf4f581c3be553302d89c9a').style.display='none'; document.getElementById('shade_configuration_panel_c981ca32ecf4f581c3be553302d89c9a').style.display='none';" ></i> 
                   </div>
                   <form id="form_24d08d54efe44960b62fbfcfcf4d1fc9" class="layui-form" action="None" method="GET" >
                    
                        
        <div class="layui-tab" id='tabs_d93af2c9eaa886ec2947cff2aab58977' >
           <ul class="layui-tab-title">
              
              <li  class="layui-this" > 网络全局设置 </li>
              
              <li > 移动点默认设置 </li>
              
              <li > wifi点默认设置 </li>
              
              <li > 边缘云默认设置 </li>
              
              <li > 网络链接默认设置 </li>
              
           </ul>
           <div class="layui-tab-content">
              
              <div class="layui-tab-item  layui-show ">
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV4基地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_779338dd5fc9c2e7c0564cda1429c3d5" type="text" name="ipBase"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">IPV6基地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_592b7207b2ce8f1c6a80050effa46c1f" type="text" name="ip6Base"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">MAC基地址：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_e1969ccb399723163faf0a44d05f0d6c" type="text" name="macColonHex"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
        <div class="layui-tab" id='tabs_25c729a43b5dcadc304ffc1e676dfaaa' >
           <ul class="layui-tab-title">
              
              <li  class="layui-this" > 网络基础设置 </li>
              
              <li > CPU资源设置 </li>
              
              <li > 系统设置 </li>
              
           </ul>
           <div class="layui-tab-content">
              
              <div class="layui-tab-item  layui-show ">
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围(m)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_c3a71a01d865c778b0f185e11d1b78b2" type="text" name="mp_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu带宽(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_221861a63416fe1430ccd2ad2bb69a95" type="text" name="mp_cpu_period"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu配额(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_b9c2ed6b9d65834ba2c9885159d869f6" type="text" name="mp_cpu_quota"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu份额相对值：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_dabe6b1c37136b961c7abfdbcd7c2169" type="text" name="mp_cpu_shares"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">物理内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_7c8cb1ab88260a162b9ad9e7b31c488e" type="text" name="mp_mem_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">虚拟内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_404a8d61edc854df9965befec72548fa" type="text" name="mp_memswap_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">操作系统镜像：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_67b78d1379d9659f8cd7e83d3e2958df" type="text" name="mp_dimage"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">系统内核参数：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_0beb7132a36436a0a792a399ce7c2cf6" type="text" name="mp_sysctls"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              </div>
              
            </div>
        </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围(m)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_f9c4ab8eb1a123751f6a3f8f9fa19ece" type="text" name="ap_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
        <div class="layui-tab" id='tabs_a9f249dd5c88e31881ac6c0ac85d0460' >
           <ul class="layui-tab-title">
              
              <li  class="layui-this" > 网络基础设置 </li>
              
              <li > CPU资源设置 </li>
              
              <li > 系统设置 </li>
              
           </ul>
           <div class="layui-tab-content">
              
              <div class="layui-tab-item  layui-show ">
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">信号接收范围(m)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_ee5dfff07310008fd87409e60b2c5f1f" type="text" name="ec_range"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu带宽(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_b9580a3e35fd35175427f545652c3b44" type="text" name="ec_cpu_period"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu配额(us)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_586a6bbe0d053f4367e29389af76cc0e" type="text" name="ec_cpu_quota"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">cpu份额相对值：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_ec8201c385e92590228bd4e7002a2e2a" type="text" name="ec_cpu_shares"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">物理内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_9fa7c77797c060bd45d6873ea857482a" type="text" name="ec_mem_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">虚拟内存：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_cf54288ff875f5716afdc535148870e1" type="text" name="ec_memswap_limit"   lay-verify="" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">操作系统镜像：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_3eb6f4dc9a55466accd59d4fc5357421" type="text" name="ec_dimage"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">系统内核参数：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_376bd8d24998a28b34093608a0947a43" type="text" name="ec_sysctls"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              </div>
              
            </div>
        </div>
                
              
              
              
              
              
              
              
              
              
              
              </div>
              
              <div class="layui-tab-item ">
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">带宽(Mbps)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_5e15665df6f5e434b4ae6d483b00861a" type="text" name="bw"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">延迟：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_95abaed56a43454f594d1ff9cf92d3aa" type="text" name="delay"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">延迟抖动：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_665eef6a226a4b9750b2bcac1ccea1c8" type="text" name="jitter"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              
              
                 <div class="layui-form-item">
                    <label class="layui-form-label" style="white-space: nowrap">丢包率(%)：</label>
                    <div class="layui-input-inline" style="width:60%; margin:0px 0px 0px 40px;">
                    <input id="input_for_form_453dbdb7c779a2360d3357004545cab3" type="text" name="loss"  required lay-verify="required" placeholder="请输入信息" autocomplete="off" class="layui-input">
                    </div>
                    
                    
                 </div>
                
              
              
              </div>
              
            </div>
        </div>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_3152cfa6bfa9675ba25511a20b32e939' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>保存</h4</button>
                
                <button type="reset" class="layui-btn layui-btn-primary">重置</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
              <div id='menu_8756cdd6aa20f46b87cbaa8249afc25e'>
              <table class="layui-table" lay-skin="nob" style='table-layout: fixed; width: 100%;'>
              <caption><h1>操作界面</h1></caption>
              
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_0_0" align='center'> 
                    
                                
                                 
                
                <button id='menu_button_2194d5078540e951f7c666f4ced5a540' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">全局设置</button>
                
                                
                    
                                
                    
                                
                    
                                
                    
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_1_0" align='center'> 
                    
                                
                    
                                
                                 
                
                <button id='menu_button_e0d1b4f3d148994849c6a7316c211ac4' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">移动点</button>
                
                                
                    
                                
                    
                                
                    
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_2_0" align='center'> 
                    
                                
                    
                                
                    
                                
                                 
                
                <button id='menu_button_226f7d55cc33fc80b016f51f8e8f496a' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">wifi点</button>
                
                                
                    
                                
                    
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_3_0" align='center'> 
                    
                                
                    
                                
                    
                                
                    
                                
                                 
                
                <button id='menu_button_384bdba44a6d43ec9ef7a34b1a7399e2' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">边缘云</button>
                
                                
                    
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_4_0" align='center'> 
                    
                                
                    
                                
                    
                                
                    
                                
                    
                                
                                 
                
                <button id='menu_button_912186d5369215f7e739f2b9e85454d8' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">网络链接</button>
                
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
                <tr>
                 
                    <td id="menu_8756cdd6aa20f46b87cbaa8249afc25e_5_0" align='center'> 
                    
                                
                    
                                
                    
                                
                    
                                
                    
                                
                    
                                
                                 
                
                <button id='menu_button_0427176136ddf8c604d7602eca674255' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">重置网络拓扑</button>
                
                                
                    
                    </td>
                 
                </tr>
              
              </table>
              </div>
            
    
                    <div id="shade_menu_button_0df7705376564d29fdda40521a9d00b8">
                    
                        
                    <div>
                    <div>
                    <i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop" style="font-size: 100px; color: #1E9FFF;"></i>
                    </div>
                    <div>
                    <p style="font-size: 30px; color: red;">移动点路径规划中</p>
                    </div>
                    </div>
                
                     
                    </div>
               
    
                   
                   <div id="shade_configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a"></div>
                   
                   <div id='configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a'>
                   <div style="margin-bottom:30px">
                   <i class="layui-icon layui-icon-close" onclick="document.getElementById('configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').style.display='none'; document.getElementById('shade_configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').style.display='none';" ></i> 
                   </div>
                   <form id="form_2ee0e04f58849f12db872eed31c846ba" class="layui-form" action="None" method="GET" >
                    
                        
            <table lay-filter="layui_static_table_108952d9825f3658c73b9b315c64d45a" id="layui_static_table_108952d9825f3658c73b9b315c64d45a">
                    <thead>
                             <tr>
                             
                                 <th lay-data="{'field': 'filename', 'width': 400}">filename</th>
                             
                                 <th lay-data="{'field': 'date', 'width': 300, 'sort': 'true'}">date</th>
                             
                                 <th lay-data="{'field': 'choose', 'type': 'radio', 'width': 100}">choose</th>
                             
                             </tr> 
                    </thead>
                     <tbody>
                              
                     </tbody>
                </table>
                
                    
                        
                <div class="layui-form-item" style='text-align:center'>
                <div class="layui-input-block">
                <button id='button_for_form_c2a53181782b8c2671279e338b8a1a2e' class="layui-btn" type="submit" lay-submit lay-filter="formDemo"><h4>仿真</h4</button>
                
                </div>
                </div>
                
                    
                    </form>
                    </div>
                    
    
                    <div id="shade_menu_button_31c133fa0c3cd3e25452be6e3b6b4b17">
                    
                        
                    <div>
                    <div>
                    <i class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop" style="font-size: 100px; color: #1E9FFF;"></i>
                    </div>
                    <div>
                    <p style="font-size: 30px; color: red;">正在上传</p>
                    </div>
                    </div>
                
                     
                    </div>
               
    
              <div id='menu_66a489dead1a5044a980d87d300f8100'>
              <table class="layui-table" lay-skin="nob" style='table-layout: fixed; width: 100%;'>
              <caption><h1>主菜单</h1></caption>
              
              
                <tr>
                 
                    <td id="menu_66a489dead1a5044a980d87d300f8100_0_0" align='center'> 
                    
                                
                                 
                
                <button id='menu_button_0df7705376564d29fdda40521a9d00b8' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">移动点路径规划</button>
                
                                
                    
                                
                    
                                
                    
                    </td>
                 
                    <td id="menu_66a489dead1a5044a980d87d300f8100_0_1" align='center'> 
                    
                                
                    
                                
                    
                                
                                 
                
                <button id='menu_button_31c133fa0c3cd3e25452be6e3b6b4b17' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">上传网络拓扑数据</button>
                
                                
                    
                    </td>
                 
                    <td id="menu_66a489dead1a5044a980d87d300f8100_0_2" align='center'> 
                    
                                
                    
                                
                                 
                
                <button id='menu_button_433b972ac08901c7f536ef2b2c66634a' type="submit" class="layui-btn layui-btn-lg layui-btn-radius layui-btn-normal" style="width: 100%; height: 100%;">仿真模拟测试</button>
                
                                
                    
                                
                    
                    </td>
                 
                    <td id="menu_66a489dead1a5044a980d87d300f8100_0_3" align='center'> 
                    
                                
                    
                                
                    
                                
                    
                    </td>
                 
                </tr>
              
              </table>
              </div>
            
</body>
<script>    
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                    $('#menu_form_ea6696c43b7091341b46743959a18e43').on('submit',
                    function(e){
                        e.preventDefault();
                        let data = $(this).serialize();
                        
                        $.ajax({
                                type: 'POST',
                                url:  e.target.action,
                                data: data,
                                dataType: "json",
                                encode: true,
                                success: function (data) {
                                        osm_map_0ae0fefc2e9748e2ef74f098f51108b2.setView(data.location);
                                        e.target.reset();
                                           }
                                });
                            }
                );
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
            
    
            var osm_map_0ae0fefc2e9748e2ef74f098f51108b2 = L.map(
                "osm_map_0ae0fefc2e9748e2ef74f098f51108b2",
                {
                    center: [39.93, 115.4],
                    crs: L.CRS.EPSG3857,
                    zoom: 12,
                    zoomControl: true,
                    preferCanvas: false,
                }
            );
            osm_map_0ae0fefc2e9748e2ef74f098f51108b2.locate({
                               setView: true
                        });

            

        
    
            var tile_layer_f3d360cd4935412e03c08a6f55481e92 = L.tileLayer(
                "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
                {"attribution": "Data by \u0026copy; \u003ca href=\"http://openstreetmap.org\"\u003eOpenStreetMap\u003c/a\u003e, under \u003ca href=\"http://www.openstreetmap.org/copyright\"\u003eODbL\u003c/a\u003e.", "detectRetina": false, "maxNativeZoom": 18, "maxZoom": 18, "minZoom": 4, "noWrap": false, "opacity": 1, "subdomains": "abc", "tms": false}
            ).addTo(osm_map_0ae0fefc2e9748e2ef74f098f51108b2);
        
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_3ffc4b288847344f5f963ad4e3593fe6)', function(data){
              let point=$('#AUTO_input_for_form_3ffc4b288847344f5f963ad4e3593fe6').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_3ffc4b288847344f5f963ad4e3593fe6').val(point['configuration']['AUTO_ip']);
              $('#input_for_form_3ffc4b288847344f5f963ad4e3593fe6').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_3ffc4b288847344f5f963ad4e3593fe6').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_79c9d86faf324e9b082108fee185c6eb)', function(data){
              let point=$('#AUTO_input_for_form_79c9d86faf324e9b082108fee185c6eb').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_79c9d86faf324e9b082108fee185c6eb').val(point['configuration']['AUTO_ip6']);
              $('#input_for_form_79c9d86faf324e9b082108fee185c6eb').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_79c9d86faf324e9b082108fee185c6eb').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_d95a35a7601dc42c24247081efb100e9)', function(data){
              let point=$('#AUTO_input_for_form_d95a35a7601dc42c24247081efb100e9').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_d95a35a7601dc42c24247081efb100e9').val(point['configuration']['AUTO_mac']);
              $('#input_for_form_d95a35a7601dc42c24247081efb100e9').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_d95a35a7601dc42c24247081efb100e9').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_8d0943031611b9929768c1a46e9c2944').on('submit',
                    function(e){
                    e.preventDefault();
                    let point=$(this).parent().slice(-1)[0]['belong'];
                    let items = $(this).find('input,select');
                    var judge=layer.confirm('IS SAVE？',{icon:7,title:'tips'},function()
                    {
                    $.each(items, function(){
                         if(this.name)
                         {
                           if(point[this.name])
                           {
                           point[this.name]=this.value;
                           }
                           else
                           {
                           point['configuration'][this.name]=this.value;
                           }
                          }
                            });
                    layer.close(layer.index);
                    }
                    );
                                }
                );
                        
                    
                        
                    
                        
                        $('#form_8d0943031611b9929768c1a46e9c2944').on('reset',
                    function(e){
                       let point=$(this).parent().slice(-1)[0]['belong'];
                       let form_item=$(this).find('input,select');
                       e.preventDefault();
                       var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                       {
                             $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             let autoflag = point['Auto_Configuration_'+this.name] ? point['Auto_Configuration_'+this.name] : point['configuration']['Auto_Configuration_'+this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             if(value&&autoflag)
                             {
                             this.setAttribute("readOnly", true);
                             }
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                            layer.close(layer.index);
                       }
                       );
                                }
                );
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_7ee49330ce4b03a125db38e918aba747').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#li_31d735e7edaf5145f70040136a57e77d').on('click',
                function(e){
                $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: none;`);


                $('#configuration_panel_7ee49330ce4b03a125db38e918aba747').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                
                $('#shade_configuration_panel_7ee49330ce4b03a125db38e918aba747').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);

                let width = $('#configuration_panel_7ee49330ce4b03a125db38e918aba747')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_7ee49330ce4b03a125db38e918aba747').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY}px;`);

                 let point = $('#configuration_menu_605f2a8a4c8230d476c96de722481315')[0]['belong'];
                 $('#configuration_panel_7ee49330ce4b03a125db38e918aba747')[0]['belong']=point;

                 
                 let form_item=$('#configuration_panel_7ee49330ce4b03a125db38e918aba747').children("form").find('input,select');
                 $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             // let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_9d61803ef906e35237db0cfd22d034f5').on('click',
                function(e){
                 let point=$('#configuration_menu_605f2a8a4c8230d476c96de722481315')[0]['belong'];
                 osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer']=point['Moving_Point_Layer'];
                 osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',mp_c2c0fbfc1bc1c906db293bd9e6a854f4);
                 let fix= osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getZoom()**6;
                 let x_abs = Math.random() < 0.5 ? -1 : 1; 
                 let y_abs = Math.random() < 0.5 ? -1 : 1; 
                 let x_r = (1 + Math.random())*fix*x_abs;
                 let y_r=  (1 + Math.random())*fix*y_abs;
                 let point_latlng = L.latLng(point.getLatLng().lat+15000/x_r, point.getLatLng().lng+15000/y_r);
                 osm_map_0ae0fefc2e9748e2ef74f098f51108b2.fire('click',
                 {
                 latlng:point_latlng
                 }
                 );
                 osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('click',mp_c2c0fbfc1bc1c906db293bd9e6a854f4);
                 $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_4ed525c49530a9ba8e9fa82c37dc8d60').on('click',
                function(e){
                 let point=$('#configuration_menu_605f2a8a4c8230d476c96de722481315')[0]['belong'];
                 
                point['Moving_Point_Layer'].removeLayer(point);
                
                let order=point['Moving_Point_Layer']['configuration']['location'].indexOf(point['location']);

                point['Moving_Point_Layer']['configuration']['location'].splice(order, 1);
                point['Moving_Point_Layer']['configuration']['positions'].splice(order, 1);
                
                point['Moving_Point_Layer'].eachLayer(function(layer)
                          {
                          layer['order']=this['configuration']['location'].indexOf(layer['location'])+1;
                          },
                          point['Moving_Point_Layer']
                          );
                if(!point['Moving_Point_Layer'].getLayers().length)
                   {
                   osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(point['Moving_Point_Layer']);
                   }
                   else
                   {
                   point['Moving_Point_Layer']['configuration']['position'] = point['Moving_Point_Layer']['configuration']['positions'][0];
                   }
                
                         point['links'].forEach(function(link)
                            {
                            let other_point = (link['origin']==point) ? link['destination'] : link['origin'];
                            let i=other_point['links'].indexOf(link);
                            other_point['links'].splice(i, 1);
                            osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(link['link']);
                            }
                            );
                            
                point['Moving_Point_Layer']['route'].clearLayers();
                point['Moving_Point_Layer']['configuration']['coord']=undefined;
                point['Moving_Point_Layer']['configuration']['routes']=undefined;
                point['Moving_Point_Layer']['configuration']['routes_distance']=0;
                
                 $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_fa454b9a98c07ca43d22a3e9c29724b3').on('click',
                function(e){
                 $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                    
                    osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',function(e){ 
                        $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: none;`);
                        }
                     )
                    
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
            
                function mp_c2c0fbfc1bc1c906db293bd9e6a854f4(e){
                    let Moving_Point_Layer = undefined;
                    if(!osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'])
                    {
                    Moving_Point_Layer = L.layerGroup().addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
                    osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = Moving_Point_Layer;
                    let configuration = {"QoS": {"delay": {"bind": false, "data": {}, "div": "delay_1b961f8f6104bc1e45dfb3210399a423"}, "packet_loss": {"bind": false, "data": {}, "div": "packet_loss_fcd0ef57845fbae2cfdcdc92731adb03"}, "status": false}, "speed": 50};
                    Moving_Point_Layer['configuration']=configuration;
                    Moving_Point_Layer['route']=L.layerGroup().addTo(Moving_Point_Layer);
                    for (x in osm_layer_bf266c434e224320ce1031d1db34896f['configuration']) {
                    Moving_Point_Layer['configuration'][x]=osm_layer_bf266c434e224320ce1031d1db34896f['configuration'][x];
                                }
                    if(!osm_layer_bf266c434e224320ce1031d1db34896f['mp'])
                    {
                    osm_layer_bf266c434e224320ce1031d1db34896f['mp']=0;
                    }
                    Moving_Point_Layer['configuration']['name']='mp'+ osm_layer_bf266c434e224320ce1031d1db34896f['mp'];
                    osm_layer_bf266c434e224320ce1031d1db34896f['mp']+=1;
                   Moving_Point_Layer['type']='mp';
                   Moving_Point_Layer['configuration']['location']=[];
                   Moving_Point_Layer['configuration']['position']='0,0,0';
                   Moving_Point_Layer['configuration']['positions']=[];
                   Moving_Point_Layer['configuration']['routes_distance']=0;
                   Moving_Point_Layer['configuration']['coord']=undefined;
                   Moving_Point_Layer['configuration']['routes']=undefined;
                   Moving_Point_Layer['configuration']['ip']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP();
                   Moving_Point_Layer['configuration']['AUTO_ip']=Moving_Point_Layer['configuration']['ip'];
                   Moving_Point_Layer['configuration']['Auto_Configuration_ip']=true;
                   Moving_Point_Layer['configuration']['ip6']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP6();
                   Moving_Point_Layer['configuration']['AUTO_ip6']=Moving_Point_Layer['configuration']['ip6'];
                   Moving_Point_Layer['configuration']['Auto_Configuration_ip6']=true;
                   Moving_Point_Layer['configuration']['mac']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateMAC();
                   Moving_Point_Layer['configuration']['AUTO_mac']=Moving_Point_Layer['configuration']['mac'];
                   Moving_Point_Layer['configuration']['Auto_Configuration_mac']=true;
                   Moving_Point_Layer['routesToCoord'] = function(routes)
                   {
                   let center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter();
                   let coord=[];
                   routes.forEach(function(route){
                   let point=L.latLng(route);
                   let x_lng=  L.latLng(center.lat,point.lng);
                   let y_lat = L.latLng(point.lat, center.lng);
                   let coord_x= point.lng > center.lng ? center.distanceTo(x_lng) : 0 - center.distanceTo(x_lng);
                   let coord_y= point.lat > center.lat ? center.distanceTo(y_lat) : 0 - center.distanceTo(y_lat);
                   coord.push([Math.round(coord_x),Math.round(coord_y),0].toString());
                   });
                   return coord;
                   }
                    }
                    else
                    {
                    Moving_Point_Layer = osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'];
                    }
                    
                    let mp_c2c0fbfc1bc1c906db293bd9e6a854f4 = L.marker(e.latlng,{"autoPan": true}).addTo(Moving_Point_Layer);
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['links']=[];
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['Moving_Point_Layer'] = Moving_Point_Layer;
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['configuration']=Moving_Point_Layer['configuration'];
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4.getXYZ=function (){
                     let point = this;
                     let center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter();
                     let x_lng=  L.latLng(center.lat,point.getLatLng().lng);
                     let y_lat = L.latLng(point.getLatLng().lat, center.lng);
                     let coord_x= point.getLatLng().lng > center.lng ? center.distanceTo(x_lng) : 0 - center.distanceTo(x_lng);
                     let coord_y= point.getLatLng().lat > center.lat ? center.distanceTo(y_lat) : 0 - center.distanceTo(y_lat);
                     return [Math.round(coord_x),Math.round(coord_y),0];
                   }
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['location'] = [e.latlng.lat,e.latlng.lng].toString();
                    Moving_Point_Layer['configuration']['location'].push(mp_c2c0fbfc1bc1c906db293bd9e6a854f4['location']);
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['position']=mp_c2c0fbfc1bc1c906db293bd9e6a854f4.getXYZ().toString();
                    Moving_Point_Layer['configuration']['positions'].push(mp_c2c0fbfc1bc1c906db293bd9e6a854f4['position']);
                    
                    Moving_Point_Layer['configuration']['position'] = Moving_Point_Layer['configuration']['positions'][0];
                     
                     
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['order']=Moving_Point_Layer['configuration']['location'].length;
                    
                    Moving_Point_Layer['route'].clearLayers();
                    Moving_Point_Layer['configuration']['coord']=undefined;
                    Moving_Point_Layer['configuration']['routes']=undefined;
                    Moving_Point_Layer['configuration']['routes_distance']=0;
                    

                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4.dragging.enable();
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4['type']='mp';


                    
                    
                    
                    
                    
                    
                    
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4.on('contextmenu',
                function(e){
                 $('#configuration_menu_605f2a8a4c8230d476c96de722481315').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                 $('#configuration_menu_605f2a8a4c8230d476c96de722481315')[0]['belong']=e.target;
                }
                );
                    
                    
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4.on('move',
                function(e){ 
                
                mp_c2c0fbfc1bc1c906db293bd9e6a854f4['links'].forEach(function(link)
                            {
                            let or=link['origin'];
                            let de=link['destination'];
                            let origin=[or.getLatLng().lat,or.getLatLng().lng];
                            let destination=[de.getLatLng().lat,de.getLatLng().lng];
                            link['link'].setLatLngs([origin,destination]);
                            }
                            );
                  
                 let point = mp_c2c0fbfc1bc1c906db293bd9e6a854f4;
                 point['location']=[point.getLatLng().lat,point.getLatLng().lng].toString();
                 point['position']=point.getXYZ().toString();
                 let order = point['order'];
                 point['Moving_Point_Layer']['configuration']['positions'][order-1] = point['position'];
                 point['Moving_Point_Layer']['configuration']['location'][order-1] = point['location'];
                 point['Moving_Point_Layer']['configuration']['position'] =  point['Moving_Point_Layer']['configuration']['positions'][0];
                 point['Moving_Point_Layer']['route'].clearLayers();
                 point['Moving_Point_Layer']['configuration']['coord']=undefined;
                 point['Moving_Point_Layer']['configuration']['routes']=undefined;
                 point['Moving_Point_Layer']['configuration']['routes_distance']=0;
                            }
                );
                    
                    
                    
                    
                    
                    mp_c2c0fbfc1bc1c906db293bd9e6a854f4.on('popupopen',
                function(e){
                   let point = e.target;
                   if(!point['configuration']['QoS']['status'])
                   {
                   point.closePopup();
                   let datas={'filename':[],'aggregation':5};
                   let filename=[];
                   if(point['configuration']['QoS_Sources'])
                   {
                   point['configuration']['QoS_Sources'].forEach(
                   function(file)
                   {
                   if(file.status=='success')
                   {
                   filename.push(file.filename)
                   }
                   }
                   );
                   }
                   datas['filename']=filename;
                   let key = point['type']+'_aggregation';
                   datas['aggregation']= point['configuration'][key] ? point['configuration'][key] : datas['aggregation'];
                   if(filename.length)
                   {
                    $.ajax({
                    type: 'POST',
                    url:  /check_emulation_status/,
                    data: JSON.stringify(datas),
                    contentType: 'application/json',
                    dataType: "json",
                    encode: true,
                    success: function (data) 
                     {
                     if(data["state"]=='success')
                     {
                     let name = point['configuration']['name'];
                     data["statistics"].forEach(
                     function(statistic)
                     {
                     chart=statistic.chart;
                     if(chart[name])
                     {
                     for(index in chart[name])
                     {
                        if(point['configuration']['QoS'][index])
                        {
                        point['configuration']['QoS'][index]['data'][statistic.filename]=chart[name][index];
                        // alert(point['configuration']['QoS'][index]['data'][statistic.filename]['description'])
                        }
                     }
                     }
                     });
                point['configuration']['QoS']['status']=true;
                let vegadata = point['configuration']['QoS'];
                for (index in vegadata)
                {
                if(vegadata[index].data)
                {  
                  let n=filename.at(-1);
                  if(vegadata[index].data[n])
                  {
                  vegaEmbed(vegadata[index].div,vegadata[index].data[n]);
                  vegadata[index].bind=true;
                  }
                  else
                  {
                  vegaEmbed(vegadata[index].div,{});
                  vegadata[index].bind=false;
                  }
                }
                }
                setTimeout(function(){
                point.openPopup();
                }, 1);
                // let p = point.getPopup();
                // alert(p.getContent().innerHTML);
                // point.unbindPopup();
                // let popup_content=$(point.getPopup().getContent()).parents('.leaflet-popup');
                // popup_content.remove();
                // point.bindPopup(p);
                // point.fire('click');
                // alert("test");
                //let popup_content=$(point.getPopup().getContent()).parents('.leaflet-popup-content');
                //popup_content.width('500');
                // popup_content.height('400');
                }
                else
                {
                    alert("仿真并未运行结束,暂时并未有可视化结果，请稍后重新加载");
                }
                }
                });
                }
                else
                {
                  alert("目前没有任何仿真程序正在运行,因此没有任何可视化结果");
                }
                // let point = mp_c2c0fbfc1bc1c906db293bd9e6a854f4;
                // alert(point['configuration']['QoS_Sources']);
                }
                else
                {
                let vegadata = point['configuration']['QoS'];
                let popup_li = $(point.getPopup().getContent()).find('.layui-tab-title > li');
                // let show_li = $(point.getPopup().getContent()).find('.layui-tab-title > li.layui-this');
                let popup_div = $(point.getPopup().getContent()).find('.layui-tab-content .layui-tab-item');
                // let show_div = $(point.getPopup().getContent()).find('.layui-tab-content .layui-tab-item.layui-show');
                let auto_show = undefined;
                let reset=false;
                for (index in vegadata)
                {
                if(vegadata[index].bind)
                {  
                  if(!auto_show)
                  {
                  auto_show=$(vegadata[index].div).parent();
                  }
                }
                else
                {
                  let tt=$(vegadata[index].div).parent();
                  if(tt.hasClass('layui-show'))
                  {
                  tt.removeClass('layui-show');
                  let i = popup_div.index(tt);
                  popup_li.eq(i).removeClass('layui-this');
                  reset=true;
                  }
                }
                }
                if(reset && auto_show)
                {
                  point.closePopup();
                  auto_show.addClass('layui-show');
                  let i = popup_div.index(auto_show);
                  popup_li.eq(i).addClass('layui-this');
                  setTimeout(function(){
                      point.openPopup();
                       }, 1);
                }
                }
                
                }
                );
                    
                    
                    
                    
                    
                    
                    
                    

                    let lat = e.latlng.lat.toString(),
                       lng = e.latlng.lng.toString();

                    
                                
    
            var osm_icon_d36b07b82b24b18c206f0202c073c13e = L.AwesomeMarkers.icon(
                {"extraClasses": "fa-rotate-0", "icon": "location-arrow", "iconColor": "white", "markerColor": "red", "prefix": "fa"}
            );
            mp_c2c0fbfc1bc1c906db293bd9e6a854f4.setIcon(osm_icon_d36b07b82b24b18c206f0202c073c13e);
            
        
                    
                                
        var osm_popup_552dd7d4d9234c750debdb97b88955e5 = L.popup({"maxWidth": 300});

        
            let html_28b1310abfe640ec85d70f1819ce6973 = $(`<div id="html_28b1310abfe640ec85d70f1819ce6973" style="width: 100.0%; height: 100.0%;">Latitude: ${lat} <br>Longitude: ${lng} </div>`)[0];
            osm_popup_552dd7d4d9234c750debdb97b88955e5.setContent(html_28b1310abfe640ec85d70f1819ce6973);
        

        mp_c2c0fbfc1bc1c906db293bd9e6a854f4.bindPopup(osm_popup_552dd7d4d9234c750debdb97b88955e5)
        ;
        

        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
                    
                                
        var osm_popup_adbde9fea5206d73d3f5a5b899538675 = L.popup({"className": "testpopup", "maxHeight": 1000, "maxWidth": 1000});
        
        let QoS = {"delay": {"bind": false, "data": {}, "div": "delay_1b961f8f6104bc1e45dfb3210399a423"}, "packet_loss": {"bind": false, "data": {}, "div": "packet_loss_fcd0ef57845fbae2cfdcdc92731adb03"}, "status": false};
        
            let tabs_5eaf3eb8cec229c97f24d735801671b8 = $(`         <div class="layui-tab" id='tabs_5eaf3eb8cec229c97f24d735801671b8' >            <ul class="layui-tab-title">                              <li  class="layui-this" > delay </li>                              <li > packet_loss </li>                           </ul>            <div class="layui-tab-content">                              <div class="layui-tab-item  layui-show ">                                                                                 <div id="delay_1b961f8f6104bc1e45dfb3210399a423">                                          </div>                                                                                           </div>                              <div class="layui-tab-item ">                                                                                                               <div id="packet_loss_fcd0ef57845fbae2cfdcdc92731adb03">                                          </div>                                                             </div>                            </div>         </div>                 `)[0];
            osm_popup_adbde9fea5206d73d3f5a5b899538675.setContent(tabs_5eaf3eb8cec229c97f24d735801671b8);
            for(x in QoS)
            {
            mp_c2c0fbfc1bc1c906db293bd9e6a854f4['configuration']['QoS'][x].div = $(tabs_5eaf3eb8cec229c97f24d735801671b8).find("#"+QoS[x].div)[0];
            }
        

        mp_c2c0fbfc1bc1c906db293bd9e6a854f4.bindPopup(osm_popup_adbde9fea5206d73d3f5a5b899538675)
        ;


        

        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
                    

                    };
                

            
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_7880123ac976d77a28c5d455f53a8157)', function(data){
              let point=$('#AUTO_input_for_form_7880123ac976d77a28c5d455f53a8157').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_7880123ac976d77a28c5d455f53a8157').val(point['configuration']['AUTO_ip']);
              $('#input_for_form_7880123ac976d77a28c5d455f53a8157').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_7880123ac976d77a28c5d455f53a8157').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3)', function(data){
              let point=$('#AUTO_input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3').val(point['configuration']['AUTO_ip6']);
              $('#input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_671e2ca6c1e02ed13909a9fdf0c526e3').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_38ba8d439ee1bd8158cb05cae5154c0c)', function(data){
              let point=$('#AUTO_input_for_form_38ba8d439ee1bd8158cb05cae5154c0c').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_38ba8d439ee1bd8158cb05cae5154c0c').val(point['configuration']['AUTO_mac']);
              $('#input_for_form_38ba8d439ee1bd8158cb05cae5154c0c').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_38ba8d439ee1bd8158cb05cae5154c0c').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_af810a4bb818872e737b625836e28382').on('submit',
                    function(e){
                    e.preventDefault();
                    let point=$(this).parent().slice(-1)[0]['belong'];
                    let items = $(this).find('input,select');
                    var judge=layer.confirm('IS SAVE？',{icon:7,title:'tips'},function()
                    {
                    $.each(items, function(){
                         if(this.name)
                         {
                           if(point[this.name])
                           {
                           point[this.name]=this.value;
                           }
                           else
                           {
                           point['configuration'][this.name]=this.value;
                           }
                          }
                            });
                    layer.close(layer.index);
                    }
                    );
                                }
                );
                        
                    
                        
                    
                        
                        $('#form_af810a4bb818872e737b625836e28382').on('reset',
                    function(e){
                       let point=$(this).parent().slice(-1)[0]['belong'];
                       let form_item=$(this).find('input,select');
                       e.preventDefault();
                       var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                       {
                             $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             let autoflag = point['Auto_Configuration_'+this.name] ? point['Auto_Configuration_'+this.name] : point['configuration']['Auto_Configuration_'+this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             if(value&&autoflag)
                             {
                             this.setAttribute("readOnly", true);
                             }
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                            layer.close(layer.index);
                       }
                       );
                                }
                );
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_4e48d30cf064f6baf792be68d780a12b').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#li_ae76935f6353fb910aecb10c52c29467').on('click',
                function(e){
                $('#configuration_menu_323d9534baacee665051af6913bb18ef').attr("style",`display: none;`);


                $('#configuration_panel_4e48d30cf064f6baf792be68d780a12b').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                
                $('#shade_configuration_panel_4e48d30cf064f6baf792be68d780a12b').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);

                let width = $('#configuration_panel_4e48d30cf064f6baf792be68d780a12b')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_4e48d30cf064f6baf792be68d780a12b').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY}px;`);

                 let point = $('#configuration_menu_323d9534baacee665051af6913bb18ef')[0]['belong'];
                 $('#configuration_panel_4e48d30cf064f6baf792be68d780a12b')[0]['belong']=point;

                 
                 let form_item=$('#configuration_panel_4e48d30cf064f6baf792be68d780a12b').children("form").find('input,select');
                 $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             // let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_ac0fad0aab70b4a9e400d7937bcbfbd8').on('click',
                function(e){
                 let point=$('#configuration_menu_323d9534baacee665051af6913bb18ef')[0]['belong'];
                osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(point);
                         point['links'].forEach(function(link)
                            {
                            let other_point = (link['origin']==point) ? link['destination'] : link['origin'];
                            let i=other_point['links'].indexOf(link);
                            other_point['links'].splice(i, 1);
                            osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(link['link']);
                            }
                            );
                 $('#configuration_menu_323d9534baacee665051af6913bb18ef').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_0d8778585c74de07c26f7faf32b5b98c').on('click',
                function(e){
                 $('#configuration_menu_323d9534baacee665051af6913bb18ef').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                    
                    osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',function(e){ 
                        $('#configuration_menu_323d9534baacee665051af6913bb18ef').attr("style",`display: none;`);
                        }
                     )
                    
    
                function ec_7535a69664f99beb67358e09acb370dc(e){
                    let ec_7535a69664f99beb67358e09acb370dc = L.marker(e.latlng,{"autoPan": true}).addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
                    ec_7535a69664f99beb67358e09acb370dc['links']=[];
                    
                    let configuration = {};
                    ec_7535a69664f99beb67358e09acb370dc['configuration']=configuration;
                    
                    for (x in osm_layer_bf266c434e224320ce1031d1db34896f['configuration']) {
                    ec_7535a69664f99beb67358e09acb370dc['configuration'][x]=osm_layer_bf266c434e224320ce1031d1db34896f['configuration'][x];
                                      }
                    
                    if(!osm_layer_bf266c434e224320ce1031d1db34896f['ec'])
                    {
                    osm_layer_bf266c434e224320ce1031d1db34896f['ec']=0;
                    }
                    ec_7535a69664f99beb67358e09acb370dc['configuration']['name']='ec'+ osm_layer_bf266c434e224320ce1031d1db34896f['ec'];
                    osm_layer_bf266c434e224320ce1031d1db34896f['ec']+=1;
                    ec_7535a69664f99beb67358e09acb370dc['configuration']['location']=[e.latlng.lat,e.latlng.lng].toString();
                    ec_7535a69664f99beb67358e09acb370dc.getXYZ=function (){
                     let point = this;
                     let center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter();
                     let x_lng=  L.latLng(center.lat,point.getLatLng().lng);
                     let y_lat = L.latLng(point.getLatLng().lat, center.lng);
                     let coord_x= point.getLatLng().lng > center.lng ? center.distanceTo(x_lng) : 0 - center.distanceTo(x_lng);
                     let coord_y= point.getLatLng().lat > center.lat ? center.distanceTo(y_lat) : 0 - center.distanceTo(y_lat);
                     return [Math.round(coord_x),Math.round(coord_y),0];
                   }
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['position']=ec_7535a69664f99beb67358e09acb370dc.getXYZ().toString();
                   
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['ip']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP();
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['AUTO_ip']=ec_7535a69664f99beb67358e09acb370dc['configuration']['ip'];
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['Auto_Configuration_ip']=true;
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['ip6']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP6();
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['AUTO_ip6']=ec_7535a69664f99beb67358e09acb370dc['configuration']['ip6'];
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['Auto_Configuration_ip6']=true;
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['mac']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateMAC();
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['AUTO_mac']=ec_7535a69664f99beb67358e09acb370dc['configuration']['mac'];
                   ec_7535a69664f99beb67358e09acb370dc['configuration']['Auto_Configuration_mac']=true;
                   
                    ec_7535a69664f99beb67358e09acb370dc.dragging.enable();
                    ec_7535a69664f99beb67358e09acb370dc['type']='ec';
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    ec_7535a69664f99beb67358e09acb370dc.on('contextmenu',
                function(e){
                 $('#configuration_menu_323d9534baacee665051af6913bb18ef').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                 $('#configuration_menu_323d9534baacee665051af6913bb18ef')[0]['belong']=e.target;
                }
                );
                    
                    
                    
                    ec_7535a69664f99beb67358e09acb370dc.on('move',
                function(e){ 
                
                                let lat = e.latlng.lat.toString(),
                                lng = e.latlng.lng.toString();
                                ec_7535a69664f99beb67358e09acb370dc.bindPopup("Latitude: " + lat + "<br>Longitude: " + lng );
                
                ec_7535a69664f99beb67358e09acb370dc['links'].forEach(function(link)
                            {
                            let or=link['origin'];
                            let de=link['destination'];
                            let origin=[or.getLatLng().lat,or.getLatLng().lng];
                            let destination=[de.getLatLng().lat,de.getLatLng().lng];
                            link['link'].setLatLngs([origin,destination]);
                            }
                            );

                 let point = ec_7535a69664f99beb67358e09acb370dc;
                 point['configuration']['location']=[point.getLatLng().lat,point.getLatLng().lng];
                 point['configuration']['position']=point.getXYZ();
                            }
                );
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    let lat = e.latlng.lat.toString(),
                       lng = e.latlng.lng.toString();
                       
                    
                                
    
            var osm_icon_acc3fedeff15b0df4917f9b9def6693a = L.AwesomeMarkers.icon(
                {"extraClasses": "fa-rotate-0", "icon": "cloud", "iconColor": "white", "markerColor": "red", "prefix": "fa"}
            );
            ec_7535a69664f99beb67358e09acb370dc.setIcon(osm_icon_acc3fedeff15b0df4917f9b9def6693a);
            
        
                    
                                
        var osm_popup_68a886d73eae1d2f7f9541098fef9189 = L.popup({"maxWidth": 300});

        
            let html_887a408a412e34cae7d1ef40fdd8433e = $(`<div id="html_887a408a412e34cae7d1ef40fdd8433e" style="width: 100.0%; height: 100.0%;">Latitude: ${lat} <br>Longitude: ${lng} </div>`)[0];
            osm_popup_68a886d73eae1d2f7f9541098fef9189.setContent(html_887a408a412e34cae7d1ef40fdd8433e);
        

        ec_7535a69664f99beb67358e09acb370dc.bindPopup(osm_popup_68a886d73eae1d2f7f9541098fef9189)
        ;
        

        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
                    
                    
                    };
                
                
            
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_11e2b22e74fa29c62ac093945049201a)', function(data){
              let point=$('#AUTO_input_for_form_11e2b22e74fa29c62ac093945049201a').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_11e2b22e74fa29c62ac093945049201a').val(point['configuration']['AUTO_ip']);
              $('#input_for_form_11e2b22e74fa29c62ac093945049201a').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_11e2b22e74fa29c62ac093945049201a').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d)', function(data){
              let point=$('#AUTO_input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d').val(point['configuration']['AUTO_ip6']);
              $('#input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_2efe5df9e39a6553c6cf21d2cfa8158d').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
        layui.use(['form'], function() {
        var form = layui.form;
        $ = layui.jquery;
        form.on('checkbox(AUTO_input_for_form_eb46a96470920ae765dc3db9b15cb91c)', function(data){
              let point=$('#AUTO_input_for_form_eb46a96470920ae765dc3db9b15cb91c').parents('div').slice(-1)[0]['belong'];
              if(data.elem.checked)
              {
              data.elem.value=true;
              $('#input_for_form_eb46a96470920ae765dc3db9b15cb91c').val(point['configuration']['AUTO_mac']);
              $('#input_for_form_eb46a96470920ae765dc3db9b15cb91c').prop("readonly",true);
              }
              else
              {
              data.elem.value=false;
              $('#input_for_form_eb46a96470920ae765dc3db9b15cb91c').prop("readonly",false);
              }
        })
})
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_72b234f61702bf94f36bf768eadf06ef').on('submit',
                    function(e){
                    e.preventDefault();
                    let point=$(this).parent().slice(-1)[0]['belong'];
                    let items = $(this).find('input,select');
                    var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                    {
                    $.each(items, function(){
                        if(this.name)
                         {
                           if(point[this.name])
                           {
                           point[this.name]=this.value;
                           }
                           else
                           {
                           point['configuration'][this.name]=this.value;
                           }
                          }
                            });
                    point['signal_range'].setRadius(point['configuration']['ap'+'_range']);
                    layer.close(layer.index);
                    }
                    );
                                }
                );
                        
                    
                        
                    
                        
                        $('#form_72b234f61702bf94f36bf768eadf06ef').on('reset',
                    function(e){
                       let point=$(this).parent().slice(-1)[0]['belong'];
                       let form_item=$(this).find('input,select');
                       e.preventDefault();
                       var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                       {
                             $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             let autoflag = point['Auto_Configuration_'+this.name] ? point['Auto_Configuration_'+this.name] : point['configuration']['Auto_Configuration_'+this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             if(value&&autoflag)
                             {
                             this.setAttribute("readOnly", true);
                             }
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                            layer.close(layer.index);
                       }
                       );
                                }
                );
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_d1bb665df116152afc95dcee1a422d0e').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#li_78e12b1cd63debde4e820c1fc6a7bbf7').on('click',
                function(e){
                $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363').attr("style",`display: none;`);


                $('#configuration_panel_d1bb665df116152afc95dcee1a422d0e').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                
                $('#shade_configuration_panel_d1bb665df116152afc95dcee1a422d0e').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);

                let width = $('#configuration_panel_d1bb665df116152afc95dcee1a422d0e')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_d1bb665df116152afc95dcee1a422d0e').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY}px;`);

                 let point = $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363')[0]['belong'];
                 $('#configuration_panel_d1bb665df116152afc95dcee1a422d0e')[0]['belong']=point;

                 
                 let form_item=$('#configuration_panel_d1bb665df116152afc95dcee1a422d0e').children("form").find('input,select');
                 $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             // let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_1c13ecd432f3f3da80b6c526abe85259').on('click',
                function(e){
                 let point=$('#configuration_menu_6f7788869d5e28fe726c5029bfba8363')[0]['belong'];
                osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(point);
                     if(point['signal_range'])
                     {
                                osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(point['signal_range']);
                      }
                         point['links'].forEach(function(link)
                            {
                            let other_point = (link['origin']==point) ? link['destination'] : link['origin'];
                            let i=other_point['links'].indexOf(link);
                            other_point['links'].splice(i, 1);
                            osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(link['link']);
                            }
                            );
                 $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_b1c6bfc2ba1e7f47d084de169309b308').on('click',
                function(e){
                 $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                    
                    osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',function(e){ 
                        $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363').attr("style",`display: none;`);
                        }
                     )
                    
    
                function ap_a6097d05f8ef97e7391517d3f11e9a29(e){
                    let ap_a6097d05f8ef97e7391517d3f11e9a29 = L.marker(e.latlng,{"autoPan": true}).addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
                    ap_a6097d05f8ef97e7391517d3f11e9a29['links']=[];
                    
                    let configuration = {};
                    ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']=configuration;
                    
                    for (x in osm_layer_bf266c434e224320ce1031d1db34896f['configuration']) {
                    ap_a6097d05f8ef97e7391517d3f11e9a29['configuration'][x]=osm_layer_bf266c434e224320ce1031d1db34896f['configuration'][x];
                                      }
                    
                    if(!osm_layer_bf266c434e224320ce1031d1db34896f['ap'])
                    {
                    osm_layer_bf266c434e224320ce1031d1db34896f['ap']=0;
                    }
                    ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['name']='ap'+ osm_layer_bf266c434e224320ce1031d1db34896f['ap'];
                    osm_layer_bf266c434e224320ce1031d1db34896f['ap']+=1;
                    
                    ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ssid']='ssid-'+ ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['name'];
                    ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['location']=[e.latlng.lat,e.latlng.lng].toString();
                    ap_a6097d05f8ef97e7391517d3f11e9a29.getXYZ=function (){
                     let point = this;
                     let center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter();
                     let x_lng=  L.latLng(center.lat,point.getLatLng().lng);
                     let y_lat = L.latLng(point.getLatLng().lat, center.lng);
                     let coord_x= point.getLatLng().lng > center.lng ? center.distanceTo(x_lng) : 0 - center.distanceTo(x_lng);
                     let coord_y= point.getLatLng().lat > center.lat ? center.distanceTo(y_lat) : 0 - center.distanceTo(y_lat);
                     return [Math.round(coord_x),Math.round(coord_y),0];
                   }
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['position']=ap_a6097d05f8ef97e7391517d3f11e9a29.getXYZ().toString();
                   
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ip']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP();
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['AUTO_ip']=ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ip'];
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['Auto_Configuration_ip']=true;
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ip6']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateIP6();
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['AUTO_ip6']=ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ip6'];
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['Auto_Configuration_ip6']=true;
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['mac']=osm_layer_bf266c434e224320ce1031d1db34896f.allocateMAC();
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['AUTO_mac']=ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['mac'];
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['Auto_Configuration_mac']=true;
                   
                   if(ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ap'+'_range']==undefined)
                   {
                   ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ap'+'_range']=500;
                   }
                    
                    ap_a6097d05f8ef97e7391517d3f11e9a29.dragging.enable();
                    ap_a6097d05f8ef97e7391517d3f11e9a29['type']='ap';
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    ap_a6097d05f8ef97e7391517d3f11e9a29.on('contextmenu',
                function(e){ 
                 $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                 $('#configuration_menu_6f7788869d5e28fe726c5029bfba8363')[0]['belong']=e.target;
                        }
                );
                    
                    
                    
                    ap_a6097d05f8ef97e7391517d3f11e9a29.on('move',
                         function(e){ 
                            
                                let lat = e.latlng.lat.toString(),
                                lng = e.latlng.lng.toString();
                                ap_a6097d05f8ef97e7391517d3f11e9a29.bindPopup("Latitude: " + lat + "<br>Longitude: " + lng );
                            
                            
                                osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(osm_signal_range_32ea76236826b8d846beb823f0e5ebc9);
                            
                            ap_a6097d05f8ef97e7391517d3f11e9a29['links'].forEach(function(link)
                            {
                            let or=link['origin'];
                            let de=link['destination'];
                            let origin=[or.getLatLng().lat,or.getLatLng().lng];
                            let destination=[de.getLatLng().lat,de.getLatLng().lng];
                            link['link'].setLatLngs([origin,destination]);
                            }
                            );

                            }
                );
                    
                    
                    
                    ap_a6097d05f8ef97e7391517d3f11e9a29.on('moveend',
           function(e){
                            
                                osm_signal_range_32ea76236826b8d846beb823f0e5ebc9.setLatLng(e.target.getLatLng());
                                 osm_layer_bf266c434e224320ce1031d1db34896f.addLayer(osm_signal_range_32ea76236826b8d846beb823f0e5ebc9);
                            
                 let point = ap_a6097d05f8ef97e7391517d3f11e9a29;
                 point['configuration']['location']=[point.getLatLng().lat,point.getLatLng().lng];
                 point['configuration']['position']=point.getXYZ();
                      }
                );
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    let lat = e.latlng.lat.toString(),
                       lng = e.latlng.lng.toString();

                    
                                
    
            var osm_icon_94ca3bf09c38b04d31f7f6aa282223f8 = L.AwesomeMarkers.icon(
                {"extraClasses": "fa-rotate-0", "icon": "wifi", "iconColor": "white", "markerColor": "red", "prefix": "fa"}
            );
            ap_a6097d05f8ef97e7391517d3f11e9a29.setIcon(osm_icon_94ca3bf09c38b04d31f7f6aa282223f8);
            
        
                    
                                
        var osm_popup_14f4b645096b358a293354735da774a7 = L.popup({"maxWidth": 300});

        
            let html_17bb28c28626e54e68ee4aed6b60352c = $(`<div id="html_17bb28c28626e54e68ee4aed6b60352c" style="width: 100.0%; height: 100.0%;">Latitude: ${lat} <br>Longitude: ${lng} </div>`)[0];
            osm_popup_14f4b645096b358a293354735da774a7.setContent(html_17bb28c28626e54e68ee4aed6b60352c);
        

        ap_a6097d05f8ef97e7391517d3f11e9a29.bindPopup(osm_popup_14f4b645096b358a293354735da774a7)
        ;
        

        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
                    
                                
            let osm_signal_range_32ea76236826b8d846beb823f0e5ebc9 = L.circle(
                e.latlng,
                {"bubblingMouseEvents": true, "color": "#3388ff", "dashArray": null, "dashOffset": null, "fill": false, "fillColor": "#3388ff", "fillOpacity": 0.2, "fillRule": "evenodd", "lineCap": "round", "lineJoin": "round", "opacity": 1.0, "radius": 500, "stroke": true, "weight": 3}
            ).addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
            
            osm_signal_range_32ea76236826b8d846beb823f0e5ebc9['type']='OSM_Signal_Range';
            
            
                        
        var osm_popup_301c263e06cd4dc0704c924d7fb70e79 = L.popup({"maxWidth": 300});

        
            let html_05574129849cce03a2191a165daf5806 = $(`<div id="html_05574129849cce03a2191a165daf5806" style="width: 100.0%; height: 100.0%;">radius: 500</div>`)[0];
            osm_popup_301c263e06cd4dc0704c924d7fb70e79.setContent(html_05574129849cce03a2191a165daf5806);
        

        osm_signal_range_32ea76236826b8d846beb823f0e5ebc9.bindPopup(osm_popup_301c263e06cd4dc0704c924d7fb70e79)
        ;
        

        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
            
                        
            osm_signal_range_32ea76236826b8d846beb823f0e5ebc9.bindTooltip(
                `<div>
                     test
                 </div>`,
                {"sticky": true}
            );
        
            
        
                    
                    
                    
                                ap_a6097d05f8ef97e7391517d3f11e9a29['signal_range']=osm_signal_range_32ea76236826b8d846beb823f0e5ebc9;
                                ap_a6097d05f8ef97e7391517d3f11e9a29['signal_range'].setRadius(ap_a6097d05f8ef97e7391517d3f11e9a29['configuration']['ap'+'_range']);
                    
                    };
                
                //osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('mousemove',function(e,data){alert(Object.keys(e));})
            
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_a3e25042a4cca9280de19f7127f61aef').on('submit',
                    function(e){
                    e.preventDefault();
                    let point=$(this).parent().slice(-1)[0]['belong'];
                    let items = $(this).find('input,select');
                    var judge=layer.confirm('IS SAVE？',{icon:7,title:'tips'},function()
                    {
                    $.each(items, function(){
                         if(this.name)
                         {
                           if(point[this.name])
                           {
                           point[this.name]=this.value;
                           }
                           else
                           {
                           point['configuration'][this.name]=this.value;
                           }
                          }
                            });
                    layer.close(layer.index);
                    }
                    );
                                }
                );
                        
                    
                        
                    
                        
                        $('#form_a3e25042a4cca9280de19f7127f61aef').on('reset',
                    function(e){
                       let point=$(this).parent().slice(-1)[0]['belong'];
                       let form_item=$(this).find('input,select');
                       e.preventDefault();
                       var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                       {
                             $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             let autoflag = point['Auto_Configuration_'+this.name] ? point['Auto_Configuration_'+this.name] : point['configuration']['Auto_Configuration_'+this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             if(value&&autoflag)
                             {
                             this.setAttribute("readOnly", true);
                             }
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                            layer.close(layer.index);
                       }
                       );
                                }
                );
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#li_904b0ab962e8703cfd709d99b3108c29').on('click',
                function(e){
                $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e').attr("style",`display: none;`);


                $('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                
                $('#shade_configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);

                let width = $('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY}px;`);

                 let point = $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e')[0]['belong'];
                 $('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6')[0]['belong']=point;

                 
                 let form_item=$('#configuration_panel_f8776bb39bf3527906d0422c56e9fcb6').children("form").find('input,select');
                 $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             // let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_72750e215f985629ce0ee32b4b4c8066').on('click',
                function(e){
                 let link=$('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e')[0]['belong'];
                  osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(link);
                            let i=link['origin']['links'].indexOf(link);
                            link['origin']['links'].splice(i, 1);
                            i=link['destination']['links'].indexOf(link);
                            link['destination']['links'].splice(i, 1);
                 $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#li_94b39a7f079599578736bf7a8804ee90').on('click',
                function(e){
                 $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e').attr("style",`display: none;`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                    
                    osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',function(e){ 
                        $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e').attr("style",`display: none;`);
                        }
                     )
                    
    
                function nl_701f15ac2d31452f7bd1361def5cae0d(e){
                let condition1=false;
                let condition2=false;
                let condition3=false;
                if(osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin'])
                {
                   if(osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']==e.target)
                    {
                    condition1=true;
                    }
                    
                   if(osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']['type']!='ap')
                    {
                    if(e.target['type'] && e.target['type']!='ap')
                    {
                    condition2=true;
                    }
                    }
                  
                  if(e.target==osm_map_0ae0fefc2e9748e2ef74f098f51108b2)
                   {
                    condition3=true;
                   }
                    
                }
                if(condition1||condition2||condition3)
                    {
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('mousemove',NetWorkLink);
                     osm_layer_bf266c434e224320ce1031d1db34896f.removeLayer(osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']);
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']=undefined;
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']=undefined;
                     return;
                    }
                    
                    if(osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin'])
                    {
                     let origin=osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line'].getLatLngs()[0];
                     let destination=[e.target.getLatLng().lat,e.target.getLatLng().lng];
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line'].setLatLngs([origin,destination]).addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']['origin']=osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin'];
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']['destination']=e.target;
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']['configuration']['node1']=osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']['configuration']['name'];
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']['configuration']['node2']=e.target['configuration']['name'];
                     let link={origin:osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin'],
                               destination:e.target,
                               link:osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']
                                };
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']['links'].push(link);
                     e.target['links'].push(link);
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('mousemove',NetWorkLink);
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']=undefined;
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']=undefined;
                    }
                    else 
                    {
                    let origin=[e.target.getLatLng().lat,e.target.getLatLng().lng];
                    let nl_701f15ac2d31452f7bd1361def5cae0d=L.polyline([origin,origin]);
                     nl_701f15ac2d31452f7bd1361def5cae0d['type']='nl';
                     
                     let configuration = {};
                     nl_701f15ac2d31452f7bd1361def5cae0d['configuration']=configuration;
                     
                    if(!osm_layer_bf266c434e224320ce1031d1db34896f['nl'])
                    {
                    osm_layer_bf266c434e224320ce1031d1db34896f['nl']=0;
                    }
                    
                     nl_701f15ac2d31452f7bd1361def5cae0d['configuration']['name']='nl'+ osm_layer_bf266c434e224320ce1031d1db34896f['nl'];
                     osm_layer_bf266c434e224320ce1031d1db34896f['nl']+=1;
                     
                    for (x in osm_layer_bf266c434e224320ce1031d1db34896f['configuration']) {
                    nl_701f15ac2d31452f7bd1361def5cae0d['configuration'][x]=osm_layer_bf266c434e224320ce1031d1db34896f['configuration'][x];
                                      }
                     
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['poly_line']=nl_701f15ac2d31452f7bd1361def5cae0d;
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2['link_of_origin']=e.target;
                     osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('mousemove',NetWorkLink);
                     
                     
                    
                    
                    
                    
                    
                    
                    
                    
                    nl_701f15ac2d31452f7bd1361def5cae0d.on('contextmenu',
                         function(e){ 
                 $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                 $('#configuration_menu_9ecf0e8ba9d3278ea074b2b3c915427e')[0]['belong']=e.target;
                            }
                );
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                     
                    
                    
                    }

                    }
                
                
                function NetWorkLink(e)
                {
                let origin=e.target['poly_line'].getLatLngs()[0];
                let destination=[e.latlng.lat,e.latlng.lng];
                e.target['poly_line'].setLatLngs([origin,destination]).addTo(osm_layer_bf266c434e224320ce1031d1db34896f);
                }
                
                
            
            
    
                 var osm_layer_bf266c434e224320ce1031d1db34896f = L.layerGroup().addTo(osm_map_0ae0fefc2e9748e2ef74f098f51108b2);
                 
                 let configuration = {"ap_range": 500, "bw": 10, "delay": "0ms", "ec_dimage": "ubuntu:test2", "ec_range": 500, "ec_sysctls": "{\u0027net.ipv6.conf.all.disable_ipv6\u0027:\u00270\u0027}", "jitter": "0ms", "loss": 0, "mp_dimage": "ubuntu:test2", "mp_emulation": 10, "mp_range": 500, "mp_sysctls": "{\u0027net.ipv6.conf.all.disable_ipv6\u0027:\u00270\u0027}"};
                 osm_layer_bf266c434e224320ce1031d1db34896f['configuration']=configuration;
                 
                 osm_layer_bf266c434e224320ce1031d1db34896f['configuration']['ipBase']='10.0.0.0/8';
                 osm_layer_bf266c434e224320ce1031d1db34896f['configuration']['ip6Base']='2001:0:0:0:0:0:0:0/64';
                 osm_layer_bf266c434e224320ce1031d1db34896f['configuration']['macColonHex']='00:00:00:00:00:01';
                 
  
                 osm_layer_bf266c434e224320ce1031d1db34896f['ipv4']={ipBaseNum:167772160,prefixLen:8,nextIP:1};
                 osm_layer_bf266c434e224320ce1031d1db34896f['ipv6']={ip6BaseNum:10389786013928190084689523154769412096,prefixLen6:64,nextIP6:1};
                 osm_layer_bf266c434e224320ce1031d1db34896f['mac']={nextAddress:1};
                 osm_layer_bf266c434e224320ce1031d1db34896f['allocateIP']=function (){
                        let i=this['ipv4'].nextIP;
                        let prefixLen=this['ipv4'].prefixLen;
                        let ipBaseNum=this['ipv4'].ipBaseNum;
                        let imax = 0xffffffff >>> prefixLen;
                        if(i > imax)
                         {
                            alert('Not enough IP addresses in the subnet')
                            return;
                         }
                        let mask = 0xffffffff ^ imax;
                        let ipnum = ( ipBaseNum & mask ) + i;
                        this['ipv4']['nextIP']=this['ipv4']['nextIP']+1;
                        return this.ipStr( ipnum )+`/${prefixLen}`;
                      }
                osm_layer_bf266c434e224320ce1031d1db34896f['ipStr'] = function (ip){
                      let w = ( ip >>> 24 ) & 0xff;
                      let x = ( ip >>> 16 ) & 0xff;
                      let y = ( ip >>> 8 ) & 0xff;
                      let z = ip & 0xff;
                return `${w}.${x}.${y}.${z}`;
                      }
             osm_layer_bf266c434e224320ce1031d1db34896f['allocateIP6']=function (){
                        let i=BigInt(this['ipv6'].nextIP6);
                        let prefixLen=BigInt(this['ipv6'].prefixLen6);
                        let ipBaseNum=BigInt(this['ipv6'].ip6BaseNum);
                        let MAX_128 = BigInt(0xffffffffffffffffffffffffffffffff)-1n;
                        let ipv6_max = MAX_128 >> prefixLen;
                        if(i>ipv6_max)
                        {
                        alert('Not enough IPv6 addresses in the subnet');
                        return;
                        }
                        let mask = MAX_128 ^ ipv6_max;
                        let ipnum = ( ipBaseNum & mask ) + i;
                        this['ipv6']['nextIP6']=this['ipv6']['nextIP6']+1;
                        return this.ip6Str( ipnum )+`/${prefixLen}`;
                      }
                      
            osm_layer_bf266c434e224320ce1031d1db34896f['ip6Str'] = function (ip){
                               let b = BigInt(0xffff);
                               let x1 = (ip >> 112n) & b;
                               let x2 = (ip >> 96n) & b;
                               let x3 = (ip >> 80n) & b;
                               let x4 = (ip >> 64n) & b;
                               let x5 = (ip >> 48n) & b;
                               let x6 = (ip >> 32n) & b;
                               let x7 = (ip >> 16n) & b;
                               let x8 = ip & b;
            return `${x1}:${x2}:${x3}:${x4}:${x5}:${x6}:${x7}:${x8}`;
                      }
                      
            osm_layer_bf266c434e224320ce1031d1db34896f['allocateMAC']=function (bytecount=6){
            let mac= BigInt(this['mac'].nextAddress);
            let pieces = [];
            for(let i=BigInt(bytecount-1);i>=0;i=i-BigInt(1))
            {
                 let piece = ((BigInt(0xff) << (i * BigInt(8))) & mac) >> (i * BigInt(8));
                 let num=(Array(2).join(0) + piece.toString(16)).slice(-2);
                 pieces.push(num);
            }
            let chStr = pieces.join(":"); 
            this['mac'].nextAddress = BigInt(this['mac'].nextAddress) + BigInt(1);
            // this['configuration']['macColonHex'] = chStr;
            return chStr;
            }
            
        osm_layer_bf266c434e224320ce1031d1db34896f['netParse'] = function(ipstr)
        {
        let prefixLen = 0;
        let ip=0;
        if(ipstr.indexOf('/')!=-1)
        {
            let str = ipstr.split('/');
                ip= str[0];
            let pf= str[1];
            prefixLen = parseInt(pf);
        }
        else
        {
            ip = ipstr;
            prefixLen = 24;
        }
        let args=[];
        ip.split('.').forEach(function(value)
        {
        args.push(parseInt(value));
        }
        );
        while(args.length<4)
        {
        args.push(0);
        }
        let ipBaseNum= (args[0] << 24)|(args[1] << 16)|(args[2] << 8)|(args[3]);
        let nextIP = (0xffffffff >>> prefixLen) & ipBaseNum;
        nextIP = nextIP > 0 ? nextIP : 1;
        return {'ipBaseNum':ipBaseNum,'prefixLen':prefixLen,'nextIP':nextIP};
        }
        
        osm_layer_bf266c434e224320ce1031d1db34896f['netParse6'] = function(ipstr)
        {
        let prefixLen6 = 0;
        let ip=0;
        if(ipstr.indexOf('/')!=-1)
        {
            let str = ipstr.split('/');
                ip= str[0];
            let pf= str[1];
            prefixLen6 = parseInt(pf);
        }
        else
        {
            ip = ipstr;
            prefixLen6 = 24;
        }
        let args=[];
        ip.split(':').forEach(function(value)
        {
        args.push(BigInt(value));
        }
        );
        while(args.length<8)
        {
        args.push(BigInt(0));
        }
        let ip6BaseNum= (args[0] << BigInt(112))|(args[1] << BigInt(96))|(args[2] << BigInt(80))|(args[3] << BigInt(64))|(args[4] << BigInt(48))|(args[5] << BigInt(32))|(args[6] << BigInt(16))|(args[7]);
        let nextIP6 = 1;
        return {'ip6BaseNum':ip6BaseNum,'prefixLen6':prefixLen6,'nextIP6':nextIP6};
        }
        
        osm_layer_bf266c434e224320ce1031d1db34896f['macParse'] = function(macstr)
        {
        let args=[];
        macstr.split(':').forEach(function(value)
        {
        args.push(BigInt(value));
        }
        );
        let nextAddress = BigInt(0);
        for (let i = 0; i < args.length; i++) {
        nextAddress = nextAddress | (args[i] << BigInt((args.length-i-1)*8));
                   } 
        return {'nextAddress':nextAddress};
        }
        osm_layer_bf266c434e224320ce1031d1db34896f['calculateXYZ']=function(center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter(),point)
                     {
                     let x_lng=  L.latLng(center.lat,point.lng);
                     let y_lat = L.latLng(point.lat, center.lng);
                     let coord_x= point.lng > center.lng ? center.distanceTo(x_lng) : 0 - center.distanceTo(x_lng);
                     let coord_y= point.lat > center.lat ? center.distanceTo(y_lat) : 0 - center.distanceTo(y_lat);
                     return [Math.round(coord_x),Math.round(coord_y),0];
                     }
                
    
                var lat_lng_popup_709fdfc839239e0f485b23c72564f431 = L.popup();
                function latLngPop(e) {
                    lat_lng_popup_709fdfc839239e0f485b23c72564f431
                        .setLatLng(e.latlng)
                        .setContent("Latitude: " + e.latlng.lat.toFixed(4) +
                                    "<br>Longitude: " + e.latlng.lng.toFixed(4))
                        .openOn(osm_map_0ae0fefc2e9748e2ef74f098f51108b2);
                    }
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click', latLngPop);
            
    
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('moveend',function (e){
                  function update_position(layer)
                  {
                  if(layer.getXYZ)
                  {
                  if(layer['Moving_Point_Layer'])
                  {
                 layer['location']=[layer.getLatLng().lat,layer.getLatLng().lng].toString();
                 layer['position']=layer.getXYZ().toString();
                 let order = layer['order'];
                 layer['Moving_Point_Layer']['configuration']['positions'][order-1] = layer['position'];
                 layer['Moving_Point_Layer']['configuration']['location'][order-1] = layer['location'];
                 layer['Moving_Point_Layer']['configuration']['position']=layer['Moving_Point_Layer']['configuration']['positions'][0];
                 if(layer['Moving_Point_Layer']['configuration']['routes'])
                 {
                 layer['Moving_Point_Layer']['configuration']['coord']=layer['Moving_Point_Layer'].routesToCoord(layer['Moving_Point_Layer']['configuration']['routes']);
                 }
                  }
                  else
                  {
                 layer['configuration']['location']=[layer.getLatLng().lat,layer.getLatLng().lng];
                 layer['configuration']['position']=layer.getXYZ();
                  }
                  }
                  if(layer.eachLayer)
                  {
                  layer.eachLayer(update_position);
                  }
                  }
                this.eachLayer(update_position);
                });
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
        
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_24d08d54efe44960b62fbfcfcf4d1fc9').on('submit',
                    function(e){
                    e.preventDefault();
                    let Global_Network_Configuration_Layer=$(this).parent().slice(-1)[0]['belong'];
                    let items = $(this).find('input');
                    var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                    {
                    $.each(items, function(){
                            if(this.value)
                            {
                           Global_Network_Configuration_Layer['configuration'][this.name]=this.value;
                           }
                            });
                    layer.close(layer.index);
                    Global_Network_Configuration_Layer['ipv4']=Global_Network_Configuration_Layer['netParse'](Global_Network_Configuration_Layer['configuration']['ipBase']);
                    Global_Network_Configuration_Layer['ipv6']=Global_Network_Configuration_Layer['netParse6'](Global_Network_Configuration_Layer['configuration']['ip6Base']);
                    Global_Network_Configuration_Layer['mac']=Global_Network_Configuration_Layer['macParse'](Global_Network_Configuration_Layer['configuration']['macColonHex']);
                    }
                    );
                                }
                );
                        
                    
                        
                    
                        
                        $('#form_24d08d54efe44960b62fbfcfcf4d1fc9').on('reset',
                    function(e){
                       let point=$(this).parent().slice(-1)[0]['belong'];
                       let form_item=$(this).find('input,select');
                       e.preventDefault();
                       var judge=layer.confirm('IS ReSet？',{icon:7,title:'tips'},function()
                       {
                             $.each(form_item, function() {
                             let value = point[this.name] ? point[this.name] : point['configuration'][this.name];
                             let autoflag = point['Auto_Configuration_'+this.name] ? point['Auto_Configuration_'+this.name] : point['configuration']['Auto_Configuration_'+this.name];
                             // let value = point['configuration'][this.name] ? point['configuration'][this.name] : point[this.name];
                             if(value)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", JSON.parse(value));
                             }
                             else
                             {
                             this.value = value;
                             if(value&&autoflag)
                             {
                             this.setAttribute("readOnly", true);
                             }
                             }
                             }
                             else
                             {
                                if(this.type=='checkbox')
                                {
                                    $(this).prop("checked", true);
                                }
                                else
                                {
                                    if(this.type=='text')
                                    {
                                        this.value='';
                                    }
                                    else if(this.tagName=='SELECT')
                                    {       
                                           $(this).find("option").eq(0).prop("selected",true);
                                    }
                                }
                             }
                             layui.form.render();
                                });
                            layer.close(layer.index);
                       }
                       );
                                }
                );
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#menu_button_2194d5078540e951f7c666f4ced5a540').on('click',
                function (e)
                {
                this['stateless']=true;
                $('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);
                
                $('#shade_configuration_panel_c981ca32ecf4f581c3be553302d89c9a').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);

                let width = $('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY}px;`);
                
                let network_configuration_layer= osm_layer_bf266c434e224320ce1031d1db34896f;
                $('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a')[0]['belong']=network_configuration_layer;
                
                let form_item=$('#configuration_panel_c981ca32ecf4f581c3be553302d89c9a').children("form").find('input');
                $.each(form_item, function() {
                             if(network_configuration_layer['configuration'][this.name]!=undefined)
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", network_configuration_layer['configuration'][this.name]);
                             layui.form.render();
                             }
                             else
                             {
                             this.value = network_configuration_layer['configuration'][this.name];
                             }
                             }
                             else
                             {
                             if(this.type=='checkbox')
                             {
                             $(this).prop("checked", true);
                             layui.form.render();
                             }
                             }
                                });
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_e0d1b4f3d148994849c6a7316c211ac4').on('click',

                function (e)
                {
                if(this['state'])
                {
                this['state']=false;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-normal";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('click',mp_c2c0fbfc1bc1c906db293bd9e6a854f4);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                else
                {
                this['state']=true;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-disabled";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',mp_c2c0fbfc1bc1c906db293bd9e6a854f4);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_226f7d55cc33fc80b016f51f8e8f496a').on('click',

                function (e)
                {
                if(this['state'])
                {
                this['state']=false;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-normal";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('click',ap_a6097d05f8ef97e7391517d3f11e9a29);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                else
                {
                this['state']=true;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-disabled";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',ap_a6097d05f8ef97e7391517d3f11e9a29);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_384bdba44a6d43ec9ef7a34b1a7399e2').on('click',

                function (e)
                {
                if(this['state'])
                {
                this['state']=false;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-normal";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('click',ec_7535a69664f99beb67358e09acb370dc);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                else
                {
                this['state']=true;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-disabled";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',ec_7535a69664f99beb67358e09acb370dc);
                osm_layer_bf266c434e224320ce1031d1db34896f['Moving_Point_Layer'] = undefined;
                }
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_912186d5369215f7e739f2b9e85454d8').on('click',
                function (e)
                {
                if(this['state'])
                {
                this['state']=false;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-normal";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.off('click',nl_701f15ac2d31452f7bd1361def5cae0d);
                function unbindLink(layer){
                                    layer.off('click',nl_701f15ac2d31452f7bd1361def5cae0d)
                                    if(layer['tmp_popup']){
                                    layer.bindPopup(layer['tmp_popup']);
                                    }
                                    if(layer.dragging)
                                    {
                                    layer.dragging.enable();
                                    }
                                    if(layer.eachLayer)
                                    {
                                    layer.eachLayer(unbindLink);
                                    }
                }
                osm_layer_bf266c434e224320ce1031d1db34896f.eachLayer(unbindLink);
                }
                else
                {
                this['state']=true;
                this.className = "layui-btn layui-btn-lg layui-btn-radius layui-btn-disabled";
                osm_map_0ae0fefc2e9748e2ef74f098f51108b2.on('click',nl_701f15ac2d31452f7bd1361def5cae0d);
                function bindLink(layer){
                                    //alert( osm_layer_bf266c434e224320ce1031d1db34896f.getLayers());
                                    // alert(layer['type']);
                                    let p;
                                    p=layer.getPopup();
                                    layer.unbindPopup();
                                    layer['tmp_popup']=p;
                                    if(layer.dragging)
                                    {
                                    layer.dragging.disable();
                                    }
                                   if(layer['type']!='nl')
                                    {
                                    layer.on('click',nl_701f15ac2d31452f7bd1361def5cae0d);
                                    }
                                    if(layer.eachLayer)
                                    {
                                    layer.eachLayer(bindLink);
                                    }      
                }
                osm_layer_bf266c434e224320ce1031d1db34896f.eachLayer(bindLink);
                }
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_0427176136ddf8c604d7602eca674255').on('click',

                function (e)
                {
                this['stateless']=true;
                var judge=layer.confirm('Removes the Network Topology ？',{icon:7,title:'tips'},function()
                {
                osm_layer_bf266c434e224320ce1031d1db34896f.clearLayers();
                layer.close(layer.index);
                }
                );
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                        $('#menu_8756cdd6aa20f46b87cbaa8249afc25e').on('click',
                         function(e){
                           if(!this['former']&& e.target.nodeName=='BUTTON' && !e.target['stateless'])
                           {
                            this['former']=e.target;
                           }
                           else if(e.target.nodeName=='BUTTON' && !e.target['stateless'])
                           {
                             if(e.target!=this['former'])
                             {
                             this['former'].click();
                             this['former']=e.target;
                             }
                             else
                             {
                             this['former']=undefined;
                             }
                           }
                            }
                );
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
            
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_0df7705376564d29fdda40521a9d00b8').on('click',
                function (e)
                {
                let data_filter = {"mp": ["location", "routes_distance"]};
                let routes={};
                let nameToLayer={};
                let center=osm_map_0ae0fefc2e9748e2ef74f098f51108b2.getCenter();
                let locationToCoord={};
                osm_layer_bf266c434e224320ce1031d1db34896f.eachLayer(function(layer){
                                    // text=text + " " + layer.getLatLng();
                                    let type=layer['type'];
                                    if(type && data_filter[type] && layer['configuration'])
                                    {
                                    let name = layer['configuration']['name'];
                                    if(name)
                                    {
                                    routes[name]={};
                                    nameToLayer[name]=layer;
                                    data_filter[type].forEach(
                                    function(value)
                                    {
                                        function obtain_Value(value)
                                        {
                                           let v1 = typeof(layer['configuration'][value])!= "undefined" ? layer['configuration'][value] : layer['configuration'][type+'_'+value];
                                           if(typeof(v1)!= "undefined")
                                            {
                                            if(Array.isArray(v1))
                                            {
                                                v1=v1;
                                            }
                                            else if(!isNaN(Number(v1)))
                                            {
                                                v1=Number(v1);
                                            }
                                            else if(v1.charAt(0)=='{' && v1.charAt(v1.length-1)=='}' )
                                            {
                                                v1=v1;
                                            }
                                            else
                                            {
                                                v1='"'+v1+'"';
                                            }
                                            }
                                            return v1;
                                        }
                                        function obtain_configuration(routes,value)
                                        {
                                            if(typeof(value)=='string')
                                            {   
                                                let alias = value.split('/');
                                                let data=obtain_Value(alias.at(-1));
                                                if(data)
                                                {
                                                    routes[alias[0]]=data;
                                                }
                                            }
                                            else if(Array.isArray(value))
                                            {   
                                                for(let i=0;i<value.length;i++)
                                                {
                                                 obtain_configuration(routes,value[i]);
                                                }
                                            }
                                            else if(Object.prototype.toString.call(value) === '[object Object]')
                                            {
                                                for(n in value)
                                                {
                                                    routes[n]={};
                                                    obtain_configuration(routes[n],value[n]);
                                                }
                                            }
                                        }
                                        obtain_configuration(routes[name],value);
                                    }
                                    );
                                    }
                                    }
                                    }
                );
                var judge=layer.confirm('IS Upload The Data of Moving Point ？',{icon:7,title:'tips'},function()
                {
                $('#shade_menu_button_0df7705376564d29fdda40521a9d00b8').attr("style",`display: flex; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);
                $.ajax({
                    type: 'POST',
                    url:  /generate_routes/,
                    data: JSON.stringify(routes),
                    contentType: 'application/json',
                    dataType: "json",
                    encode: true,
                    success: function (data) {
                    if(data["Exception"])
                    {
                    $('#shade_menu_button_0df7705376564d29fdda40521a9d00b8').attr("style",`display: none;`);
                    alert("寻找路径失败,请重新尝试，错误代码:"+data["Exception"].toString());
                    }
                    else if(data["state"]=='success')
                    {
                    data["routes"].forEach(function(mp)
                    {
                    let edge_color=['#006400','#EE82EE','#0000FF','#00FFFF','#F0FFF0'];
                    for(n in mp)
                    {
                    let route_layer=undefined;
                    let moving_point = nameToLayer[n];
                    if(moving_point && moving_point['configuration'])
                    {
                    route_layer=moving_point['route'];
                    moving_point['configuration']['routes']=[];
                    moving_point['configuration']['coord']=[];
                    }
                    else
                    {
                    let route_layer=osm_layer_bf266c434e224320ce1031d1db34896f;
                    }
                    let distance=0;
                    mp[n].forEach(function(point,index)
                    {
                    point.forEach(function(edge){
                    let route =  L.polyline(edge,{color:edge_color[index%5]}).addTo(route_layer);
                    edge.forEach(function(e){
                        let xyz=osm_layer_bf266c434e224320ce1031d1db34896f.calculateXYZ(center,L.latLng(e));
                        if(moving_point && moving_point['configuration'] && moving_point['configuration']['coord'].at(-1)!=xyz.toString())
                        {
                        moving_point['configuration']['coord'].push(xyz.toString());
                        if(moving_point['configuration']['routes'].length>0)
                        {
                        distance=distance + L.latLng(e).distanceTo(L.latLng(moving_point['configuration']['routes'].at(-1)));
                        // alert(e.toString()+","+moving_point['configuration']['routes'].at(-1).toString());
                        moving_point['configuration']['routes_distance']=distance;
                        }
                        moving_point['configuration']['routes'].push(e);
                        }
                         });
                    });
                    });
                    // alert(n);
                    }
                    });
                    $('#shade_menu_button_0df7705376564d29fdda40521a9d00b8').attr("style",`display: none;`);
                    alert("上传成功");
                    }
                    else
                    {
                    $('#shade_menu_button_0df7705376564d29fdda40521a9d00b8').attr("style",`display: none;`);
                    alert("上传失败");
                    }
                       }
                    });
                layer.close(layer.index);
                }
                );
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
            let table = layui.table;
            table.init('layui_static_table_108952d9825f3658c73b9b315c64d45a', {
                height: 300 
                ,limit: 5
                ,page: {'limit':5,'limits':[5,2*5]}
                   });
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#form_2ee0e04f58849f12db872eed31c846ba').on('submit',
                    function(e){
                    e.preventDefault();
                    let property = ["filename"];
                    let table = layui.table;
                    let file = table.checkStatus('layui_static_table_108952d9825f3658c73b9b315c64d45a');
                    let data=[];
                    if(file.data.length<1)
                    {
                    alert('Please select at least one item');
                    }
                    else
                    {
                    file.data.forEach(function(value)
                    {
                    let item={};
                    property.forEach(function(value1)
                    {
                    if(value[value1])
                    {
                    item[value1]=value[value1];
                    }
                    });
                    data.push(item);
                    });
                    var judge=layer.confirm('Are You Sure？',{icon:7,title:'tips'},function()
                    {
                    $.ajax({
                    type: 'POST',
                    url:  /emulation/,
                    data: JSON.stringify(data),
                    contentType: 'application/json',
                    dataType: "json",
                    encode: true,
                    success: function (data) {
                    if(data["state"]=='success')
                    {
                    alert("上传成功，仿真正在运行");
                    if(data["situations"])
                    {
                    osm_layer_bf266c434e224320ce1031d1db34896f.eachLayer(function(layer){
                    if(layer['configuration'])
                    {   
                        layer['configuration']['QoS_Sources']=data["situations"];
                        
                        if(layer['configuration']['QoS'])
                        {
                        layer['configuration']['QoS']['status']=false;
                        }
                        
                        /* let name = layer['configuration']['name'];
                        if(data["statistics"][name])
                        {
                        for(index in data["statistics"][name])
                        {
                        alert(index);
                        if(layer['configuration']['QoS'][index])
                        {
                        layer['configuration']['QoS'][index]['data']=data["statistics"][name][index]
                        }
                        }
                        // vega_parse(JSON.stringify(data["outcome"]),layer['configuration']['QoS']['delay']);
                         //layer['configuration']['QoS']['delay']['data']=data["outcome"];
                         // osm_vega_parse({"axes": [{"scale": "x", "title": "Time", "type": "x"}, {"scale": "y", "title": "Dominant Wave Period (s)", "type": "y"}], "data": [{"name": "table", "values": [{"col": "dominant_wave_period (s)", "idx": 1366257000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366260600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366264200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366267800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366271400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366275000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366278600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366282200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366285800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366289400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366293000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366300200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366303800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366307400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366311000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366314600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366318200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366321800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366325400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366329000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366332600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366336200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366339800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366343400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366347000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366350600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366354200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366357800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366361400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366365000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366368600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366372200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366375800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366379400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366383000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366386600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366390200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366393800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366397400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366401000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366404600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366408200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366411800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366415400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366419000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366422600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366426200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366429800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366433400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366437000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366440600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366444200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366447800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366451400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366455000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366458600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366462200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366465800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366469400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366473000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366476600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366480200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366483800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366487400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366491000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366494600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366498200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366501800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366505400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366509000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366512600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366516200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366519800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366523400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366527000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366530600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366534200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366537800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366541400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366545000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366548600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366552200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366559400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366563000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366566600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366570200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366573800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366577400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366581000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366584600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366588200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366591800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366595400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366599000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366602600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366606200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366609800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366613400000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1366617000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366620600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366624200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366627800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366631400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366635000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366638600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366642200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366645800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366649400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366653000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366656600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366660200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366663800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366667400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366671000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366674600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366678200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366681800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366685400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366689000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366692600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366696200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366699800000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1366703400000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1366707000000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1366710600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366714200000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1366717800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366721400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366725000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366728600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366732200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366735800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366739400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366743000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1366746600000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1366750200000, "val": 12.0}, {"col": "dominant_wave_period (s)", "idx": 1366753800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366757400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366761000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366764600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366768200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366771800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366775400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366779000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366782600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366786200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366789800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366793400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366797000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366800600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366804200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366807800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366811400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366818600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366822200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366829400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366833000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366836600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366840200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366843800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366847400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366851000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366854600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366858200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366861800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366865400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366869000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366872600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366876200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1366879800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366883400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366887000000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1366890600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1366894200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366897800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366901400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366905000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366908600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366912200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366915800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366919400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366923000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366926600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366930200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366933800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1366937400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366941000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366944600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366948200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366951800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366955400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366959000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366962600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366966200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366969800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366973400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366977000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1366980600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366984200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366987800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366991400000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1366995000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1366998600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367002200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367005800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367009400000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367013000000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367016600000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1367020200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367023800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367027400000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1367031000000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367034600000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367038200000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1367041800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367045400000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367049000000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1367052600000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367056200000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367059800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367063400000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367067000000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1367070600000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367077800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367081400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367085000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367088600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367092200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367095800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367099400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367103000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367106600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367110200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367113800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367117400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367121000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367124600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367128200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367131800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367135400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367139000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367142600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367146200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367149800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367153400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367157000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367160600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367164200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367167800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367171400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367175000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367178600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367182200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367185800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367189400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367193000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367196600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367200200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367203800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367207400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367211000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367214600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367218200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367221800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367225400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367229000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367232600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367236200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367239800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367243400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367247000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367250600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367254200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367257800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367261400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367265000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367268600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367272200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367275800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367279400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367283000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367286600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367290200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367293800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367297400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367301000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367304600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367308200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367311800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367315400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367319000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367322600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367326200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367329800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367337000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367340600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367344200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367347800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367351400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367355000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367358600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367362200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367365800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367369400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367373000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367376600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367380200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367383800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367387400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367391000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367394600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367398200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367401800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367405400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367409000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367412600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367416200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367419800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367423400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367427000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367430600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367434200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367437800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367441400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367445000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367448600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367452200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367455800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367459400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367463000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367466600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367470200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367473800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367477400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367481000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367484600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367488200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367491800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367495400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367499000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367502600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367506200000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1367509800000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1367513400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367517000000, "val": 17.0}, {"col": "dominant_wave_period (s)", "idx": 1367520600000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1367524200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367527800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367531400000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367535000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367538600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367542200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367545800000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1367549400000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1367553000000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1367556600000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1367560200000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1367563800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367571000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367574600000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1367578200000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1367581800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367585400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367589000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367592600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367596200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367599800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367603400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367607000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367610600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367614200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367617800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367621400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367625000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367628600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367632200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367635800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367639400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367643000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367646600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367650200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367653800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367657400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367661000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367664600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367668200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367671800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367675400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367679000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367682600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367686200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367689800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367693400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367697000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367700600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367704200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367707800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367711400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367715000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367718600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367722200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367725800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367729400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367733000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367736600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367740200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367743800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367747400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367751000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367754600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367758200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367761800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367765400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367769000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367772600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367776200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367779800000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367783400000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367787000000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367790600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367794200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1367797800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367801400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367805000000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367808600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367812200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367815800000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367819400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367823000000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367826600000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1367830200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367833800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367837400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367841000000, "val": 12.0}, {"col": "dominant_wave_period (s)", "idx": 1367844600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367848200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367851800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367855400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367859000000, "val": 12.0}, {"col": "dominant_wave_period (s)", "idx": 1367862600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367866200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1367869800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367873400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367877000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367880600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367884200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367887800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367891400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367895000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367898600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367902200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367905800000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367909400000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367913000000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367916600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1367920200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367923800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367927400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1367931000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1367934600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367938200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367941800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367945400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367949000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367952600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367956200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367959800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367963400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367967000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367970600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367974200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367977800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367981400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367985000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367988600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367992200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1367995800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1367999400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368003000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368006600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368010200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368013800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368017400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368021000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368024600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368028200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368031800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368035400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368039000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368042600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368046200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368049800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368053400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368057000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368060600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368064200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368067800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368071400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368075000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368078600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368082200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368085800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368089400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368093000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368096600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368100200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368103800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368107400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368111000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368114600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368118200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368121800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368125400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368129000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368132600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368136200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368139800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368143400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368147000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368150600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368154200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368157800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368161400000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368165000000, "val": 3.0}, {"col": "dominant_wave_period (s)", "idx": 1368168600000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1368172200000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1368175800000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1368179400000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1368183000000, "val": 3.0}, {"col": "dominant_wave_period (s)", "idx": 1368186600000, "val": 3.0}, {"col": "dominant_wave_period (s)", "idx": 1368190200000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368193800000, "val": 4.0}, {"col": "dominant_wave_period (s)", "idx": 1368197400000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1368201000000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368204600000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368208200000, "val": 5.0}, {"col": "dominant_wave_period (s)", "idx": 1368211800000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368215400000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368219000000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368222600000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368226200000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368229800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1368233400000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368237000000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368240600000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368244200000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1368247800000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1368251400000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368255000000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368258600000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1368262200000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368265800000, "val": 14.0}, {"col": "dominant_wave_period (s)", "idx": 1368269400000, "val": 13.0}, {"col": "dominant_wave_period (s)", "idx": 1368273000000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1368276600000, "val": 16.0}, {"col": "dominant_wave_period (s)", "idx": 1368280200000, "val": 12.0}, {"col": "dominant_wave_period (s)", "idx": 1368283800000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1368287400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368291000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368294600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368298200000, "val": 15.0}, {"col": "dominant_wave_period (s)", "idx": 1368301800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368305400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368309000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368312600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368316200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368319800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368323400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368327000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368330600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368334200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368337800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368341400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368345000000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368348600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368352200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368355800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368359400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368363000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368366600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368370200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368373800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368377400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368381000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368384600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368388200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368391800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368395400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368399000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368402600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368406200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368409800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368413400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368417000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368420600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368424200000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368427800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368431400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368435000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368438600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368442200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368445800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368449400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368453000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368456600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368460200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368463800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368467400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368471000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368474600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368478200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368481800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368485400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368489000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368492600000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1368496200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1368499800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368503400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368507000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368510600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368514200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368517800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368521400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368525000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368528600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368532200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368535800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368539400000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368543000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368546600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368550200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368553800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368557400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368561000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368564600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368568200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368571800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368575400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368579000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368582600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368586200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368589800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368593400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368597000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368600600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368604200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368607800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368611400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368615000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368618600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368622200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368625800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368629400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368633000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368636600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368640200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368643800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368647400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368651000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368654600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368658200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368665400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368669000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368672600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368676200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368679800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368683400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368687000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368690600000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368694200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1368697800000, "val": 7.0}, {"col": "dominant_wave_period (s)", "idx": 1368701400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368705000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368708600000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368712200000, "val": 6.0}, {"col": "dominant_wave_period (s)", "idx": 1368715800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368719400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368723000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368726600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368730200000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368733800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368737400000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368741000000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368744600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368748200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368751800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368755400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368759000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368762600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368766200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368769800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368773400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368777000000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368780600000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368784200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368787800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368791400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368795000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368798600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368802200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368805800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368809400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368813000000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368816600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368820200000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368823800000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368827400000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368831000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368834600000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368838200000, "val": 11.0}, {"col": "dominant_wave_period (s)", "idx": 1368841800000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368845400000, "val": 10.0}, {"col": "dominant_wave_period (s)", "idx": 1368849000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368852600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368856200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368859800000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368863400000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368867000000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368870600000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368874200000, "val": 9.0}, {"col": "dominant_wave_period (s)", "idx": 1368877800000, "val": 8.0}, {"col": "dominant_wave_period (s)", "idx": 1368881400000, "val": 9.0}]}], "height": 200, "legends": [], "marks": [{"from": {"data": "table", "transform": [{"keys": ["data.col"], "type": "facet"}]}, "marks": [{"properties": {"enter": {"stroke": {"field": "data.col", "scale": "color"}, "strokeWidth": {"value": 2}, "x": {"field": "data.idx", "scale": "x"}, "y": {"field": "data.val", "scale": "y"}}}, "type": "line"}], "type": "group"}], "padding": "auto", "scales": [{"domain": {"data": "table", "field": "data.idx"}, "name": "x", "range": "width", "type": "time"}, {"domain": {"data": "table", "field": "data.val"}, "name": "y", "nice": true, "range": "height"}, {"domain": {"data": "table", "field": "data.col"}, "name": "color", "range": "category20", "type": "ordinal"}], "width": 800},layer['configuration']['QoS']['delay']['div']);
                         // alert("test");
                        }
                        */
                    }
                    });
                    }
                    }
                    else
                    {
                    alert("上传失败，仿真无法运行");
                    }
                    }
                    });
                    layer.close(layer.index);
                    });
                    }
                    }
                );
                        
                    
                        
                    
                        
                    
                    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                        $('#configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').on('mousedown',

     function(e ) {
    var panel = this;
    var x1 = e.offsetX ;
    var y1 = e.offsetY;

        document.onmousemove = function() {

        // 获取鼠标在浏览器中的位置 - 每个事件都有自己独特的事件对象
        var e = window.event;
        var x2 = e.pageX;
        var y2 = e.pageY;

        // 计算left和top
        var l = x2 - x1
        var t = y2 - y1

        // 设置不能超出左上角和右上角
        if(l < 0) {
            l = 0
        }
        if(t < 0) {
            t = 0
        }
          // 设置left和top的最大值 不能超过事件源本身

        if(t > document.documentElement.scrollHeight - panel.offsetHeight) {
            t = document.documentElement.scrollHeight - panel.offsetHeight;
        }
        if(l > document.documentElement.offsetWidth - panel.offsetWidth) {
            l = document.documentElement.offsetWidth - panel.offsetWidth;
        }

        // 设置div的left和top
        panel.style.left = l + 'px'
        panel.style.top = t + 'px'
    };

    document.onmouseup = function(){
                        document.onmousemove = null;
                        document.onmouseup = null;
                    };
    }

                );
                        
                    
                        
                    
                    
    
                
                    
                    $('#menu_button_433b972ac08901c7f536ef2b2c66634a').on('click',
                function (e)
                {
                $('#configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').attr("style",`display: block; left: ${e.originalEvent.pageX}px; top: ${e.originalEvent.pageY}px;`);


                let width = $('#configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a')[0].offsetWidth;
                let x = e.originalEvent.pageX;
                if(x  > document.documentElement.offsetWidth - width) {
                    x = document.documentElement.offsetWidth - width;
                }
                $('#configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').attr("style",`display: block; left: ${x}px; top: ${e.originalEvent.pageY-500}px;`);
                $('#shade_configuration_panel_baa702d66aef8eb988fa83e6eb5c0e4a').attr("style",`display: block; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                
                    
                    $('#menu_button_31c133fa0c3cd3e25452be6e3b6b4b17').on('click',
                function (e)
                {
                let data_filter = {"ap": ["name", "location", "position", "ssid", "ip", "ip6", "mac", "range"], "ec": ["name", "location", "position", "ip", "ip6", "mac", "range", "speed", "cpu_period", "cpu_quota", "cpu_shares", "mem_limit", "memswap_limit", "dimage", "sysctls"], "mp": ["name", "location", "position", "ip", "ip6", "mac", "range", "speed", "cpu_period", "cpu_quota", "cpu_shares", "mem_limit", "memswap_limit", "dimage", "sysctls", {"NodeMobilityConfig": ["speed", "coord", "distance/routes_distance"]}, {"EmulationConfig": {"globalconfig": {"emulationWay": ["key/emulationWays", "value/emulation"]}, "localconfig": ["delay/delayTest", "packet_loss/packetLossTest"]}}], "nl": ["node1", "node2", "delay", "bw", "jitter", "loss"]};
                let network_Topology={};
                osm_layer_bf266c434e224320ce1031d1db34896f.eachLayer(function(layer){
                                    // text=text + " " + layer.getLatLng();
                                    let type=layer['type'];
                                    if(type && data_filter[type] && layer['configuration'])
                                    {
                                    let name = layer['configuration']['name'];
                                    if(name)
                                    {
                                    network_Topology[name]={};
                                    network_Topology[name]['type']='"'+type+'"';
                                    data_filter[type].forEach(
                                    function(value)
                                    {
                                        function obtain_Value(value)
                                        {
                                           let v1 = typeof(layer['configuration'][value])!= "undefined" ? layer['configuration'][value] : layer['configuration'][type+'_'+value];
                                           if(typeof(v1)!= "undefined")
                                            {
                                            if(Array.isArray(v1))
                                            {
                                                v1=v1;
                                            }
                                            else if(!isNaN(Number(v1)))
                                            {
                                                v1=Number(v1);
                                            }
                                            else if(v1.charAt(0)=='{' && v1.charAt(v1.length-1)=='}' )
                                            {
                                                v1=v1;
                                            }
                                            else
                                            {
                                                v1='"'+v1+'"';
                                            }
                                            }
                                            return v1;
                                        }
                                        function obtain_configuration(network_Topology,value)
                                        {
                                            if(typeof(value)=='string')
                                            {
                                                let alias = value.split('/');
                                                let data=obtain_Value(alias.at(-1));
                                                if(data)
                                                {
                                                    network_Topology[alias[0]]=data;
                                                }
                                            }
                                            else if(Array.isArray(value))
                                            {   
                                                for(let i=0;i<value.length;i++)
                                                {
                                                 obtain_configuration(network_Topology,value[i]);
                                                }
                                            }
                                            else if(Object.prototype.toString.call(value) === '[object Object]')
                                            {
                                                for(n in value)
                                                {
                                                    network_Topology[n]={};
                                                    obtain_configuration(network_Topology[n],value[n]);
                                                }
                                            }
                                        }
                                        obtain_configuration(network_Topology[name],value);
                                    }
                                    );
                                    }
                                    }
                                    }
                );
                var judge=layer.confirm('IS Upload The Data of Network Topology ？',{icon:7,title:'tips'},function()
                {
                $('#shade_menu_button_31c133fa0c3cd3e25452be6e3b6b4b17').attr("style",`display: flex; left: 0px; top: 0px; height:${document.documentElement.scrollHeight}px`);
                $.ajax({
                    type: 'POST',
                    url:  /network_topolog/,
                    data: JSON.stringify(network_Topology),
                    contentType: 'application/json',
                    dataType: "json",
                    encode: true,
                    success: function (data) {
                    if(data["state"]=='success')
                    {
                    $('#shade_menu_button_31c133fa0c3cd3e25452be6e3b6b4b17').attr("style",`display: none;`);
                    data['network_topology'].forEach(function(value)
                    {
                    $('#layui_static_table_108952d9825f3658c73b9b315c64d45a tbody').prepend(`<tr><td>${value['filename']}</td><td>${value['date']}</td></tr>`);
                    });
                    let table = layui.table;
                    table.init('layui_static_table_108952d9825f3658c73b9b315c64d45a', {
                             height: 300
                             ,limit: 5
                             ,page: {'limit':5,'limits':[5,2*5]}
                   });
                    alert("上传成功");
                    }
                    else
                    {
                    $('#shade_menu_button_31c133fa0c3cd3e25452be6e3b6b4b17').attr("style",`display: none;`);
                    alert("上传失败");
                    }
                       }
                    });
                layer.close(layer.index);
                }
                );
                }
                );
                    
                
                    
                
                    
                
                    
                
                    
                
                    
                
                
    
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
                        
                    
            
</script>